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

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

Было проведено тестирование программы, подтверждающее правильность её работы. Ниже приведены результаты работы.

Рисунок 2 - Приложение «клиент»

Рисунок 3 - Приложение «сервер»

Рисунок 4 - Выбор источника данных

Рисунок 5 - Запуск сервера прошел успешно

Рисунок 6 - Получение данных после запроса от клиента

В ходе выполнения курсового проекта было разработано «клиент-серверное приложение» для передачи и обработки данных. Программа была разработана на языке С++ в среде программирования Microsoft Visual Studio.

Проведённое тестирование показало правильность работы программ. Разработка проведена с использованием операционной системы Windows 7 на ПК с процессором Phenom II.

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

Листинг программного текста

Приложение “Сервер”

#include "stdafx.h"

#include "lip_server.h"

#include "MainFrm.h"

#include "lip_serverDoc.h"

#include "lip_serverView.h"

#include "ParamDlg.h"

#include "global.h"

#include " \crypt.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILEchar THIS_FILE[] = FILE ;

#endif_MESSAGE_MAP(CLip_serverApp, CWinApp)

//{{AFX_MSG_MAP(CLip_serverApp)_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()_serverApp::CLip_serverApp()

{

// TODO: add construction code here,

// Place all significant initialization in InitInstance

}_serverApp theApp;CLip_serverApp::InitInstance()

{(!AfxSocketInit())

{(IDP_SOCKETS_INIT_FAILED);FALSE;

}d(NULL);(d.DoModal() == IDOK) {= d.m_Port;= d.m_Password;= new CDatabase();>OpenEx(NULL, 0);= new CRecordset(pLipDB);= false;(WaitingForConnect, NULL);

}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 RU)* pDocTemplate;= new CSingleDocTemplate(_MAINFRAME,_CLASS(CLip_serverDoc),_CLASS(CMainFrame), // main SDI frame window_CLASS(CLip_serverView));(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();TRUE;

}CLip_serverApp::ExitInstance()

{(pLipRec) {>Close();pLipRec;

}(pLipDB) {>Close();pLipDB;

}CWinApp::ExitInstance();

}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 upport

//}}AFX_VIRTUAL

// Implementation:_MESSAGE_MAP()

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

{

}CAboutDlg::DoDataExchange(CDataExchange* pDX)

{::DoDataExchange(pDX);

}_MESSAGE_MAP(CAboutDlg, CDialog)_MESSAGE_MAP()

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

{aboutDlg;.DoModal();

}WaitingForConnect( LPVOID pParam)

{

SOCKET MySocket;// основное гнездо - на которое принимаются соединения

sockaddr_inMySocketAdress;// структура данных гнездаnewSocket;// гнездо, на которое перенаправляются соединения

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

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

Характеристики нанотолщинных композиционных слоистых покрытий на гибких подложках после деформации
Жидкокристаллические индикаторы широко используют в оптических устройствах отображения информации, в частности, как составную часть жидкокристаллических дисплеев. В зависимости от материала подложек различают жесткие (стеклянные подложки) и гибкие (пластиковые подложки) индикаторы. Преимущества гибких индикаторов в компактности, пр ...

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