20985

ВЗАИМОДЕЙСТВИЕ ПРИКЛАДНЫХ ПРОГРАММ С ПОМОЩЬЮ ТРАНСПОРТНЫХ ПРОТОКОЛОВ СЕТИ ИНТЕРНЕТ

Лабораторная работа

Информатика, кибернетика и программирование

dfm AnsiString NIK_server; TForm1 Form1; __fastcall TForm1::TForm1TComponent Owner : TFormOwner { ServerSocket1 Active=true; Memo1 Clear; Memo2 Clear; } void __fastcall TForm1::ServerSocket1ClientConnectTObject Sender TCustomWinSocket Socket { Memo1 Lines Add Клиент присоединился ; } ...

Русский

2013-08-02

74 KB

8 чел.

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ЛАБОРАТОРНАЯ РАБОТА №1

ПО ДИСЦИПЛИНЕ «СЕТИ ЭВМ»

ТЕМА РАБОТЫ «ВЗАИМОДЕЙСТВИЕ ПРИКЛАДНЫХ ПРОГРАММ С ПОМОЩЬЮ ТРАНСПОРТНЫХ ПРОТОКОЛОВ СЕТИ ИНТЕРНЕТ»

 

 

Выполнили

студент группы ИВТПО-431т

Рахмангулов А.М.

Салямов Д.И.

Проверила

Муслимова Г. Р.

Уфа 2011

ЦЕЛЬ РАБОТЫ:

Изучение принципов работы транспортных протоколов Интернет, разработка прикладных программ, осуществляющих взаимодействие между собой на основе этих протоколов.

ПОСТАНОВКА ЗАДАЧИ

Написать клиент-серверную программу, работающую по протоколу TCP  с аналогичными программами по указанному преподавателем порту и реализующую простейший chat с выбираемыми собеседниками. Протокол о совершаемых действиях должен выводиться на экран.

 

ОБОСНОВАНИЕ ВЫБОРА СРЕДЫ ПРОГРАММИРОВАНИЯ

Для разработки данного приложения был выбран язык Borland C++ Builder 6. C++ Builder позволяет быструю визуальную разработку приложений на языке C++. Профессиональные средства языка C++ интегрированы в визуальную среду разработки. Интегрированная среда разработки объединяет редактор форм, инспектор объектов, палитру компонент, администратор проекта и полностью интегрированные редактор кода и отладчик – инструменты быстрой разработки программных приложений, обеспечивающие полный контроль над кодом и ресурсами. C++Builder воплощает важнейшие аспекты объектно-ориентированного программирования в удобном для пользования инструменте визуального проектирования, что лучше всего подходит для реализации и отображения результатов работы программы.

РУКОВОДСТВО ПРОГРАММИСТА

Листинг сервера

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

AnsiString NIK_server;

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

ServerSocket1->Active=true;

Memo1->Clear();

Memo2->Clear();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocket1ClientConnect(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add("Клиент присоединился");

}

//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add(Socket->ReceiveText());

AnsiString S=Memo1->Lines->Text;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

ServerSocket1->Socket->Connections[0]->SendText(Memo1->Text);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::SpeedButton1Click(TObject *Sender)

{

NIK_server=Edit1->Text;

Memo1->Lines->Add(NIK_server+": "+Memo2->Text);

for(int i=0;i<=ServerSocket1->Socket->Connected;i++)

{

       ServerSocket1->Socket->Connections[i]->SendText(

        NIK_server+": "+Memo2->Lines->Strings[Memo2->Lines->Count - 1]);;

}

Memo2->Clear();

}

Листинг клиента

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

AnsiString Adress,NIK_client;

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

Memo1->Clear();

Memo2->Clear();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

ClientSocket1->Active=true;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

ClientSocket1->Socket->SendText(Memo1->Text);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocket1Connect(TObject *Sender,

     TCustomWinSocket *Socket)

{

Memo1->Lines->Add("Клиент присоединился к серверу");

}

//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocket1Read(TObject *Sender,

     TCustomWinSocket *Socket)

{

AnsiString Rtext ;

Rtext = ClientSocket1->Socket->ReceiveText() ;

Memo1->Lines->Add(Rtext);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::SpeedButton1Click(TObject *Sender)

{

NIK_client=Edit2->Text;

Memo1->Lines->Add(NIK_client+": "+Memo2->Text);

ClientSocket1->Socket->SendText(NIK_client+": "+Memo2->Lines->Strings[Memo2->Lines->Count - 1]);

Memo2->Clear();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::SpeedButton2Click(TObject *Sender)

{

 if (Edit1->Text=="")

    {

       if (InputQuery("Соединиться...", "IP-адрес:", Adress));

       ClientSocket1->Address=Adress;

    }

 ClientSocket1->Address=Edit1->Text;

 ClientSocket1->Active=true;

 Edit1->Text=Adress;

}

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Работа с клиентом

После запуска клиента введите ip адрес, ник, порт сервера в программе указан автоматически 2000.  В случае успешного соединения, вы увидите сообщение о том, что соединение удалось, клиент присоседился к серверу.

Работа с сервером

После запуска сервера введите ip адрес, ник, порт сервера в программе указан авмотически 2000. В процессе работы сервера вы можете наблюдать какими данными обмениваются клиенты с сервером.

Для прекращения работы сервера, закройте окно программы.


 

А также другие работы, которые могут Вас заинтересовать

70091. Изучение виртуальной машины VirtualBox на примере установки ОС MS-DOS 6.22 214.5 KB
  Виртуальная машина эмулирует работу реального компьютера. На виртуальную машину, так же как и на реальный компьютер можно инсталлировать операционную систему, у виртуальной машины так же есть BIOS, оперативная память, жёсткий диск (выделенное место на жёстком диске...
70092. Уточнение запроса 66.5 KB
  Для выделения требуемых записей (строк) исходной таблицы используется выражение, следующее за ключевым словом WHERE. Условия поиска в операторе WHERE являются логическими выражениями, т.е. принимающими одно из двух возможных значений – true...
70094. ПОЛІТИЧНА КАРТА ЄВРОПИ 103 KB
  Згрупувати країни Європи за різними ознаками. У кожному групуванні обчислити кількість країн у відповідних групах та частку групи в загальній кількості країн Європи. Групування можна оформити у вигляді окремих таблиць чи зведеної таблиці, зразок якої поданий нижче...
70095. ОЦЕНКА ОПАСНОСТИ ПОРАЖЕНИЯ ТОКОМ В ТРЕХФАЗНЫХ ЭЛЕКТРИЧЕСКИХ СЕТЯХ НАПРЯЖЕНИЕМ ДО 1000 В 111.5 KB
  Изучить влияние параметров сети режима нейтрали сопротивления изоляции и емкости фазных проводов относительно земли на опасность поражения человека электрическим током. Сравнить опасность прикосновения человека к проводам трехфазных сетей с изолированной и заземленной нейтралями...
70096. Операционные системы. Полезные команды Unix 89.5 KB
  Файлы, имена которых записаны в файле f7, скопировать в каталог dir4, при этом сообщить об ошибках текстом на экране, а так же направить это сообщение об ошибках в файл myerr. Просмотреть его содержимое.
70097. ХАРАКТЕРИСТИКА РЕМЕСЕЛ ПО ТЕКСТИЛЮ (ТКАНИНИ, КИЛИМИ, ВИШИВКА) 70 KB
  Матеріали інструменти та пристрої: таблиці малюнки натуральні зразки асортименту тканин килимів вишитих виробів різних типологічних груп. Текстильні матеріали це матеріали які складаються з текстильних волокон та ниток.
70098. Начало работы в 1С: «Бухгалтерия» 425 KB
  В данное окно вносятся сведения о нашей организации которые можно просмотреть в списке Константы. Так же данные сведения можно заносить непосредственно в Константы для этого вызовите из Главного меню Операции.