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

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

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 : Все права защищены! 2024