Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Тема: Мережні засоби операційних систем

Читайте также:
  1. A) создании системы наукоучения
  2. DSM — система классификации Американской психиатрической ассоциации
  3. Ethernet для автоматизации приборных систем измерения
  4. I. Информационная система управления.
  5. I. Основные подсистемы автоматизированной информационной системы управления персоналом.
  6. I. Поняття про екосистему.
  7. I. Семинар. Тема 1. Понятие и методологические основы системы тактико-криминалистического обеспечения раскрытия и расследования преступлений

Завдання:

1.Дослідити роботу програми для обміну текстовими повідомленнями через мережу.

 

2.Описати документацію на типи даних, структури та функції, які використовуються в програмі.

3.За завданням викладача розробити власний проект на основі існуючого.

 

Послідовність виконання:

1 Помістіть на форму програми-сервера компоненти TIdTCPServer, TMemo і заповніть код:

//конструктор форми

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

IdTCPServer1->DefaultPort=8090;//задати порт

IdTCPServer1->Active=true;//зробити сервер активним

Memo1->Lines->Clear();//очистити Memo1

}

//обробник події OnExecute компонента IdTCPServer1

//AThread - потік, який використовується для клієнтських з'єднань

void __fastcall TForm1::IdTCPServer1Execute(TIdPeerThread *AThread)

{

try

{//добавити в Memo1 отриманий рядок

Memo1->Lines->Add(AThread->Connection->ReadLn());

//добавити в Memo1 віддалену IP адресу

Memo1->Lines->Add(AThread->Connection->Binding->PeerIP);

//надіслати локальну IP адресу

AThread->Connection->WriteLn(AThread->Connection->Binding->IP);

}

catch(...)

{//при помилці надіслати "помилка"

AThread->Connection->WriteLn("помилка");

}

AThread->Connection->Disconnect();//роз'єднати з'єднання

}

 

3 Для можливості роботи програми-сервера на комп’ютері без середовища Borland C++ Builder 6 задайте опції проекту: Project/Options.../Packages/зніміть прапорець Build with runtime packages. На цей комп’ютер також необхідно скопіювати файли: borlndmm.dll і cc3260mt.dll.

4 Скомпілюйте програму-сервер.

5 Помістіть на форму програми-клієнта компоненти TEdit (2 штуки), TButton, TIdTCPClient, і заповніть код:

//конструктор форми

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

Edit1->Text="127.0.0.1";//локальний адрес

}

//обробник події OnClick

void __fastcall TForm1::Button1Click(TObject *Sender)

{

IdTCPClient1->Host=Edit1->Text;//вказати адресу віддаленого комп'ютера

IdTCPClient1->Port=8090;//вказати порт

try

{

IdTCPClient1->Connect();//з'єднати з сервером

IdTCPClient1->WriteLn(Edit2->Text);//надіслати рядок

Edit2->Text = IdTCPClient1->ReadLn();//отримати рядок

}

catch(...)

{//при помилці вивести повідомлення

ShowMessage("Помилка з'єднання");

}

IdTCPClient1->Disconnect();//роз'єднати з'єднання

}

6 Скомпілюйте програму-клієнт.

7 Скопіюйте програму-сервер та файли borlndmm.dll і cc3260mt.dll на віддалений комп’ютер з адресою, наприклад, 192.168.1.5. Виконайте програму-сервер на віддаленій машині і програму клієнт на локальній. Введіть в Edit1 клієнта адресу віддаленого комп’ютера і передайте йому будь-який текст. Для тестування програм без мережі на локальній машині слід вводити адресу 127.0.0.1.

 


Дата добавления: 2015-07-11; просмотров: 107 | Нарушение авторских прав


Читайте в этой же книге: Приклад синхронізації потоків за допомогою об’єкта CRITICAL_SECTION | Лабораторна робота 3 | Функції Win32API для файлових операцій | Стислі теоретичні відомості | Зміст та порядок виконання роботи | Форма звіту | Лабораторна робота № 3 |
<== предыдущая страница | следующая страница ==>
Тема: Створення та використання DLL| Додання елементів в список вибіркового керування доступом (DACL) файла або каталога

mybiblioteka.su - 2015-2024 год. (0.007 сек.)