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

ClientSocket->ServerSocket. Не вызывается ClientSocketError   Найти похожие ветки 

← →
alex_ustasu ©   (2002-10-11 12:02) [0]

День добрый. Работаю с D5 и его winsock-компонентами.Чтобы проверить активен ли сервер, пытаюсь с ним соединиться Client-ом. При отсутствии сервера, возникает, естественно, ошибка, но Обработчик ClientError не вызывается, а сначала вызывается ClientSocketDisconnect, а затем в модуле OnLookup возникает ошибка с выдачей сообщения на экран(код 11001 WSAHOST_NOT_FOUND, как я понял и должно быть).Можно ли это обойти, обходясь только использованием ClientSocket?


← →
Алексей Ким ©   (2002-10-11 12:13) [1]

errorcode:=0?


← →
alex_ustasu ©   (2002-10-11 12:16) [2]

Конечно. Говорю же, не вызывается ClientSocketError, вот в чем дело.


← →
Алексей Ким ©   (2002-10-11 12:19) [3]

ну... ну... пройдись дебагером,
посмотри если есть связь между tclientsocket и clientsocket1error итд а вообще... это ошибка или exception?


← →
alex_ustasu ©   (2002-10-11 13:44) [4]

Цепочку проследил такую от своего СlientSocketDisconnect(почему-то он вызывается при ошибке в LookUp): возврат в
TCustomSocket.Event->TAbstractSocket.DoEvent->TCustomWinSocket.Event->TCustomWinSocket.Disconnect->TCustomWinSocket.CMLookupComplete. Он уже выдает сообщение об ошибке с помощью raise ESocketError.CreateResFmt(@sWindowsSocketError, [SysErrorMessage(Message.AsyncError), Message.ASyncError, "ASync Lookup"]).->TCustomWinSocket.WndProc вызывает еще Application.HandleException, который выдает еще одно сообщение об ошибке.
Т.е. LookUp(как я понял) завершается с ошибкой (зачем тогда надо выполнять Disconnect, мне непонятно), но мой обработчик не вызывается. А дальше пошло-поехало...


← →
alex_ustasu ©   (2002-10-11 15:10) [5]

Нашел одну статейку Кариха Николая, который утверждает, что при открытии Socket-а, ClientSocketError при ошибке действительно не вызывается. Надо использовать try ... except. Попробую...



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

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



Память: 0.46 MB
Время: 0.014 c
7-28314
KPV-10k
2002-10-07 22:02
2002.12.09
Вырубить монитор


3-27811
REP
2002-11-21 07:12
2002.12.09
Вопросы по TQRPreview


4-28343
NIVA
2002-10-25 08:20
2002.12.09
Язык по умолчанию


3-27879
Arkady
2002-11-21 13:17
2002.12.09
DBGrid


4-28360
SlashSW
2002-10-28 21:59
2002.12.09
Анимированная иконка в tray




   Наверх