![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ServerSocket Connections [D6, WinXP]
kosmach © (2002-08-13 08:47:00)Подскажите пожалуйста, вот есть у меня ServerSocket, я беру и в событии onClientConnect добавляю Host нового клиента в ListBox, а потом нужно в onClientDisconnect его от тудова удалить, но как я не пытался, так и не смог определить индекс отсоединяющегося клиента. Ну неужели никак нельзя сделаться, помогите кто-нибудь разобраться.
Димон1 (2002-08-13 10:51:00) [1]:)
kosmach (2002-08-13 10:22:00) [2]Классно, если сработает - цены тебе нет. Спасибо, а то я бы еще долго б не догодался.
Димон1 (2002-08-13 10:10:00) [3]procedure Tdm.ServerSocket1ClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
var
i:integer;
begin
for i:= 0 to ServerSocket1.Socket.ActiveConnections-1 do
begin
if ServerSocket1.Socket.Connections[i]=Socket then ShowMessage(IntToStr(i));
end;
end;
kosmach (2002-08-13 10:04:00) [4]
> Димон1
Ну во представь себе два приложения запущенных на одном и том же компе, которые коннектятся к одному и тому же серверу, на сервере у них у обоих буде виден один и тот же хост и один и тот же адресс, а клиента два, именно поэтому и надо различать их по индексу.
Димон1 (2002-08-13 10:00:00) [5]RemoteAddress
kosmach (2002-08-13 09:58:00) [6]
> Димон1
Как Host получить я и так знаю это из выше мною сказанного следует.
Не могу я только по хостам различать клиентов, он может хоть у всех клиентов одинаковым быть.
Димон1 (2002-08-13 09:47:00) [7]procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
ShowMessage(Socket.RemoteHost);
end;
kosmach (2002-08-13 09:17:00) [8]Люди, помогите мне пожалуйста, ну неужели никто не знает как в любом обрабатываем ServerSocket"ом событии определить какой же все таки клиент сейчас обрабатывается. Может я чего-то не допонимаю, но ведь с этим же постоянно сталкиваешься, кто-нибудь откликнитесь пожалуйста, очень прошу.