|
맞는 방법인지는 모르겠어요.
몇가지 TEST를 해보니까 맞게 나오는거 같거든요.
검색을 해서 찾은 내용을 참고했습니다.
Ping 하기 바로 전에
DWORD dwConnectionTypes;
// 정상적으로 검사됨 [랜케이블 연결되었을때 응답이 있건없건 이리로 ]
if(InternetGetConnectedState(&dwConnectionTypes, 0))
IdIcmpClient1->Ping(IdIcmpClient1->Host, IdIcmpClient1->Port);
else
ShowMessage("검사할 수 없습니다"); // 이부분을 랜케이블 뺀것으로 인식해도 되나요?
위에 소스를 보면 else 부분엔 랜케이블을 뺏을때만 들어옵니다.
이 방법이 맞는 건지요?
unitas 님이 쓰신 글 :
: Ping 확인후 응답이 있으면 Connect 을 시도합니다.
: (바로 Connect을 하면 끊어졌을때 20초 이상 걸리기 때문에 Connect전에 Ping을 사용하고 있습니다.)
:
: 랜케이블이 빠졌을때 아래와 같은 에러가 납니다.
: Project TEST.exe raised exception class EldSocketError with message 'Socket Error # 10065 No route
: to host', Process stopped. Use Step or Run to continue.
:
: 랜케이블이 빠졌을때 Check 할수 있는 방법이 있나요?
: (Ping 전에 랜케이를이 빠져있는 상태를 알수 있는 방법.)
:
: 참고로 indy에 TIdlcmpClient 컴포넌트를 사용하고 있습니다.
:
: 아시는분 답변 꼭 부탁드립니다.
|