Вниз
Скачать: CL | DM;

Как узнать номер отключившегося клиента в TServerSocket?   Найти похожие ветки 

← →
Galiaf   (2005-07-04 03:29) [0]

Сдравствуйте. В TServerSocket при отправке текста необходимо указывать номер клиента от 0 до количество клиентов - 1, можно ли в событии onclientdisconect узнать какой именно клиент отключился(желательно узнать его номер), или есть какие-нибудь другие способы это реализовать?


← →
Digitman ©   (2005-07-04 08:40) [1]


> можно ли в событии onclientdisconect узнать какой именно
> клиент отключился(желательно узнать его номер)


procedure TMyForm.SrvScktDisconnect(Sender: TOBject; Socket: TCustomWinSocket);
var
 i: Integer;
begin
 with SrvSckt.Socket do
 for i := 0 to ActiveConnections - 1 do
   if Connections[i] = Socket then
     begin
       ShowMessage("Отключился клиент № " + IntToStr(i));
       break;
     end;
end;


> необходимо указывать номер клиента от 0 до количество клиентов
> - 1


идентифицировать клиента по его номеру в списке активных соединений нельзя

пусть некий в момент времени список выглядит так :

0 - КлиентА
1 - КлиентВ
2 - КлиентС

здесь КлиентС имеет "номер 2"

теперь, допустим, КлиентВ отключился

после отключения КлиентаВ список будет выглядеть уже по-иному :

0 - КлиентА
1 - КлиентС

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.036 c
11-1109449924
Shanker
2005-02-26 23:32
2005.10.23
Координаты окна, размер окна


2-1127821155
Wolferio
2005-09-27 15:39
2005.10.23
ShellListView


1-1128013964
userrrrr
2005-09-29 21:12
2005.10.23
как получит ин-цию о процессоре?


1-1128084529
Андрей Жук
2005-09-30 16:48
2005.10.23
Директивы компилятора Delphi


14-1127730619
ANB
2005-09-26 14:30
2005.10.23
Где можно скачать компоненты под D7 для работы с BTRIEVE ?




   Наверх