Сети ЭВМ и телекоммуникации. Фролов А.И. - 38 стр.

UptoLike

Составители: 

36
Socket.SendText(Edit2.Text);
ClientSocket1.Active:=False;
При подключении клиента к ServerSocket1 произойдет событие Server-
Socket1.OnClientConnect, в котором нужно вывести следующую информацию:
Memo1.Lines.Add('Client connected from: '+Socket.RemoteHost);
При попытке передать клиентом на сервер сообщение на сервере произой-
дет событие ServerSocket1.OnClientRead, в котором текст считывается и выво-
дится в Memo1:
ReceivedString:=''; {локальная переменная типа string}
while Socket.ReceiveLength>0 do
ReceivedString:=ReceivedString+Socket.ReceiveText;
Memo1.Lines.Add('Received string: '+ReceivedString);
При отсоединении клиента произойдет событие OnClientDisconnect, в ко-
тором мы добавим в Memo1 соответствующее сообщение:
Memo1.Lines.Add('Client '+Socket.RemoteHost+' disconnected.');
Запустите проект и протестируйте его. В качестве ip-адреса можно исполь-
зовать адреса соседних компьютеров, на которых запущены аналогичные про-
граммы или адрес 127.0.0.1 для тестирования на локальном компьютере.
Примечание: Оправка сообщений с сервера клиентам осуществляется с ис-
пользованием тех же методов и событий соответственно на стороне сервера и
клиентов. Отличие заключается в необходимости точного указания номера со-
единения в свойстве Connections[Index: Integer]: TcustomWinSocket. Например:
ServerSocket1.Socket.Connections[i].SendText('Test');
Здесь i = (0..N-1) номер соединения, N общее количество соединений.
3.7 Задание на лабораторную работу
1. Ознакомиться с теоретическим и справочным материалом.
2. Реализовать приведенное в пункте 2 простейшее приложение и ознако-
миться с работой компонентов Socket.
                                         36

     Socket.SendText(Edit2.Text);
     ClientSocket1.Active:=False;
    При подключении клиента к ServerSocket1 произойдет событие Server-
Socket1.OnClientConnect, в котором нужно вывести следующую информацию:
     Memo1.Lines.Add('Client connected from: '+Socket.RemoteHost);
    При попытке передать клиентом на сервер сообщение на сервере произой-
дет событие ServerSocket1.OnClientRead, в котором текст считывается и выво-
дится в Memo1:
     ReceivedString:=''; {локальная переменная типа string}
     while Socket.ReceiveLength>0 do
           ReceivedString:=ReceivedString+Socket.ReceiveText;
     Memo1.Lines.Add('Received string: '+ReceivedString);
    При отсоединении клиента произойдет событие OnClientDisconnect, в ко-
тором мы добавим в Memo1 соответствующее сообщение:
     Memo1.Lines.Add('Client '+Socket.RemoteHost+' disconnected.');
    Запустите проект и протестируйте его. В качестве ip-адреса можно исполь-
зовать адреса соседних компьютеров, на которых запущены аналогичные про-
граммы или адрес 127.0.0.1 для тестирования на локальном компьютере.
    Примечание: Оправка сообщений с сервера клиентам осуществляется с ис-
пользованием тех же методов и событий соответственно на стороне сервера и
клиентов. Отличие заключается в необходимости точного указания номера со-
единения в свойстве Connections[Index: Integer]: TcustomWinSocket. Например:
     ServerSocket1.Socket.Connections[i].SendText('Test');
    Здесь i = (0..N-1) – номер соединения, N – общее количество соединений.

    3.7 Задание на лабораторную работу
    1. Ознакомиться с теоретическим и справочным материалом.
    2. Реализовать приведенное в пункте 2 простейшее приложение и ознако-
миться с работой компонентов Socket.