Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.23;
Скачать: 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 вся ветка

Текущий архив: 2005.10.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
2-1128174460
NightLord
2005-10-01 17:47
2005.10.23
Программное создание компонента


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


2-1127593247
Сергей Р.
2005-09-25 00:20
2005.10.23
Вопрос про перетаскивание Timage


2-1127468702
Киря
2005-09-23 13:45
2005.10.23
Как правильно сдеать запрос?


3-1126085667
2bj
2005-09-07 13:34
2005.10.23
переход фокуса между компонентами на DBCtrlGrid-е