Разделы сайта

Результаты работы

for(i = 0; i < nBlocs; i++, pDst++, pSrc++) // цикл гаммирования

открытого

*pDst = *pSrc ^ gamma(0); // текста блоками по 32 бита[nBlocs * 4] = 0;// вставить завершающий символ 0nBlocs * 4 + 1;// возвратить число байт в зашифрованном тексте

}

Приложение “Клиент”

#include "stdafx.h"

#include "llip_client.h"

#include "MainFrm.h"

#include "llip_clientDoc.h"

#include "llip_clientView.h"

#include "PropDlg.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILEchar THIS_FILE[] = FILE ;

#endif_MESSAGE_MAP(CLlip_clientApp, CWinApp)

//{{AFX_MSG_MAP(CLlip_clientApp)_COMMAND(ID_APP_ABOUT, OnAppAbout)

// NOTE - the ClassWizard will add and remove mapping macros here.

// DO NOT EDIT what you see in these blocks of generated code!

//}}AFX_MSG_MAP

// Standard file based document commands_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)_MESSAGE_MAP()_clientApp::CLlip_clientApp()

{

// TODO: add construction code here,

// Place all significant initialization in InitInstance

}_clientApp theApp;CLlip_clientApp::InitInstance()

{short port; // порт сервераlong addr; // адрес сервераd(NULL);(d.DoModal() == IDOK) {= d.m_port;(m_pwd, d.m_pwd.operator LPCTSTR(), 20);= *((unsigned long*) d.m_addr);

}false;(!AfxSocketInit())

{(IDP_SOCKETS_INIT_FAILED);FALSE;

}

#ifdef _AFXDLLdControls();// Call this when using MFC in a shared DLL

#elsedControlsStatic();// Call this when linking to MFC statically

#endif(_T("Local AppWizard-Generated Applications"));(0); // Load standard INI file options (including )* pDocTemplate;= new CSingleDocTemplate(_MAINFRAME,_CLASS(CLlip_clientDoc),_CLASS(CMainFrame), // main SDI frame window_CLASS(CLlip_clientView));(pDocTemplate);

// Parse command line for standard shell commands, DDE, file opencmdInfo;(cmdInfo);

// Dispatch commands specified on the command line(!ProcessShellCommand(cmdInfo))FALSE;

// The one and only window has been initialized, so show and update it._pMainWnd->ShowWindow(SW_SHOW);_pMainWnd->UpdateWindow();r;_pMainWnd->GetWindowRect(&r);.right = r.left + 500;.bottom = r.top + 380;_pMainWnd->MoveWindow(&r);

sockaddr_in sa;// структура данных гнезда

s = socket(AF_INET, SOCK_STREAM, 0);// создать гнездо(s == INVALID_SOCKET)

{(NULL, "Socket error.", "Ошибка", MB_OK);0;

}(addr == INADDR_NONE) // при ошибке

{(NULL, "Invalid IP address.", "Ошибка", MB_OK);(s);0;

}.sin_family = AF_INET;// заполнить структуру данных гнезда.sin_port = htons(port);.sin_addr.s_addr = addr;

// установить соединение:(connect(s, (sockaddr*)&sa, sizeof(sa)) == SOCKET_ERROR)

{(NULL, "Connect error.", "Ошибка", MB_OK);(s);0;

}TRUE;

}CAboutDlg : public CDialog

{:();

// Dialog Data

//{{AFX_DATA(CAboutDlg){ IDD = IDD_ABOUTBOX };

//}}AFX_DATA

// ClassWizard generated virtual function overrides

//{{AFX_VIRTUAL(CAboutDlg):void DoDataExchange(CDataExchange* pDX); // DDX/DDV

//}}AFX_VIRTUAL

// Implementation:

//{{AFX_MSG(CAboutDlg)

// No message handlers

//}}AFX_MSG_MESSAGE_MAP()

};::CAboutDlg() : CDialog(CAboutDlg::IDD)

{

//{{AFX_DATA_INIT(CAboutDlg)

//}}AFX_DATA_INIT

}CAboutDlg::DoDataExchange(CDataExchange* pDX)

{::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CAboutDlg)

//}}AFX_DATA_MAP

}_MESSAGE_MAP(CAboutDlg, CDialog)

//{{AFX_MSG_MAP(CAboutDlg)

// No message handlers

//}}AFX_MSG_MAP_MESSAGE_MAP()

// App command to run the dialogCLlip_clientApp::OnAppAbout()

{aboutDlg;.DoModal();

}CLlip_clientApp::ExitInstance()

{(s); // закрыть гнездоCWinApp::ExitInstance();}

Приложение Б (обязательное)

Диаграммы

Рисунок 7. (приложение Б) - диаграмма вариантов использования

Перейти на страницу: 1 2 3 4

Самое читаемое:

Конструкторско-технологическое проектирование печатной платы
печатная плата Проектирование печатных плат (ПП) представляет трудоемкий, но очень важный процесс. Для того, чтобы обеспечить функционирование электронной аппаратуры (ЭА) необходимы не только схемотехнические решения, функциональная точность, надежность, но и учет влияния внешней среды, конструктивных, эксплуатационных требований, пр ...

www.techstages.ru : Все права защищены! 2025