|
TClientSocket과 TServerSocket을 사용하여 소켓 프로그램을 작성하고 있습니다.
NonBlocking mode에서 작업할때는 에러의 발생을 OnError 이벤트의 발생에서 처리해 줄수가
있었습니다.
그런데 Blocking mode로 소켓을 바꾸고 나서는 Error가 발생해도 에러를 OnError이벤트가
발생하지 않습니다.
예를 들어서 서버가 준비되지 않았을때 발생하는 에러 코드가 10061입니다
NonBlocking mode에서는 아래와 같이 처리 해 주었습니다만
void __fastcall TFrmMain::ClientSocketError(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
if(ErrorCode == 10061){
ShowMessage("서버가 응답하지 않습니다.");
ErrorCode = 0;
}
}
Blocking mode에서는 어떻게 처리 해 주어야 합니까?
OnError 이벤트가 발생하지 않습니다.
에러처리하는 방법이 있을 텐데.
|