Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: CL | DM;

Вниз

TServerSocket.Socket.Disconnect соединения неправильно работает??   Найти похожие ветки 

 
SergP ©   (2003-08-14 12:59) [0]

Вот такой код:

procedure TForm1.ClientSocketDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
var
handl:integer;
begin
handl:=TClientSocket(Sender).Tag;
ServerSocket.Socket.Disconnect(handl);
end;

Вобщем в прокси-сервере когда дисконектится ClientSocket, мне нужно дисконектить соответствующее соединение в ServerSocket
В свойстве Tag ClientSocket"a я храню хендл соединения.
Так вот при дисконекте Clientsocket"а вызывается эта процедура и вместо того чтобы дисконектить соединение ServerSocket"a c указаным хендлом, она дисконектит все его соединения.
Это глюки в ServerSocket или я что-то не так делаю?


 
Digitman ©   (2003-08-14 13:18) [1]

с фиксацией "хэндлов" ты, imho, занялся ерундой

храни в ClientSocket.Socket.Data просто указатель на объект ClientSocket: TServerClientWinSocket, тот самый, что ты получаешь вторым параметром в событии TServerSocket.OnClientConnect - он будет однозначно идентифицировать связку.

в этом случае

procedure TForm1.ClientSocketDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
TCustomWinSocket(Socket.Data).Close;
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.019 c
1-40397
uhnin
2003-09-30 23:17
2003.10.13
Delphi 5 ServisPack


1-40384
Виктор
2003-10-01 11:50
2003.10.13
Где достать такой компонент


14-40612
Кулюкин Олег
2003-09-19 13:30
2003.10.13
Крик души: нужен грид


14-40652
Digitman
2003-09-23 16:15
2003.10.13
Любопытная (и неприятная) проблема с DLL и run-time packages


14-40677
kopcap
2003-09-23 15:19
2003.10.13
А где нахаляву моно свой сервак разместить ???