C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[47714] Re:Re:[감사]랜 케이블이 빠졌을때 indy로 Ping 에러 [감사합니다.]
unitas [] 1821 읽음    2007-01-10 18:43
답변 감사드립니다.

말씀하신대로 commnad 창에서는 Media disconnected 라고 나옵니다.

gethostname을 이용해서 Test를 해보니 랜케이블이 연결되어 있으면 LocalIP가 정상적으로
표시가 되고 랜케이블을 빼면 LocalIP가 127.0.0.1 로 표시가 됩니다.

그럼 이런식으로 LocalIP가 127.0.0.1 가 나오면 랜케이블이 연결되지 않은 것으로 보면 되나요?

혹시 제가 한 방법은 문제가 있나요?

    char szHostName[256];
    if (gethostname(szHostName, 256) == SOCKET_ERROR)
        return;
    hostent *hos = gethostbyname(szHostName);
    if(hos == NULL)
        return;
    char *addr = *(hos->h_addr_list);
    AnsiString LocalIP = AnsiString((unsigned char)addr[0]) + '.'
                         + AnsiString((unsigned char)addr[1]) + '.'
                         + AnsiString((unsigned char)addr[2]) + '.'
                         + AnsiString((unsigned char)addr[3]);





장성호 님이 쓰신 글 :
: 랜 케이블을 빼고
: command 창에서 ipconfig 해보세요
: 그럼 Media disconnected 라는 메세지가 뜨면서 ip정보나 나타나지 않을겁니다.
:
: 다시 말해
: 랜선이 연결되어있는지 확인하는 방법은
: local 컴퓨터의 ip가 존재하는지 확인하면 될것 같습니다.
:
: -----------------------------------------------
: local pc의 ip를 확인하는 방법은?    검색을 이용해서....
:
: WSAStartup  이나 gethostname 으로 검색해 보세요
:
: 그럼....
:
:

+ -

관련 글 리스트
47706 [질문]랜 케이블이 빠졌을때 indy로 Ping 에러 unitas 1608 2007/01/10
47712     Re:[자답]랜 케이블이 빠졌을때 indy로 Ping 에러 [이렇게 해도 되는건지는 모르겠어요.] unitas 1989 2007/01/10
47711     Re:[질문]랜 케이블이 빠졌을때 indy로 Ping 에러 장성호 2261 2007/01/10
47714         Re:Re:[감사]랜 케이블이 빠졌을때 indy로 Ping 에러 [감사합니다.] unitas 1821 2007/01/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.