Вниз
Скачать: 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.039 c
2-1127909372
Grief
2005-09-28 16:09
2005.10.23
Изображения с палитрой


1-1128297855
Mixer
2005-10-03 04:04
2005.10.23
Как узнать подключен ли manifest?


14-1128404400
Rentgen
2005-10-04 09:40
2005.10.23
Torry опять упал?


3-1126270174
Alex Kryuchkov
2005-09-09 16:49
2005.10.23
[Microsoft][ODBC Driver Manager] Function sequence error


14-1127989736
Pazitron_Brain
2005-09-29 14:28
2005.10.23
Свидание программистов.




   Наверх