Q&A

  • Lan 케이블의 연결 유무를 확인 하는 방법 좀 알려주세요...
Program을 실행하는 중에 LAN 케이블이 빠졌을 경우에 Check 할 수 있는 방법 좀 알려주세요...
LAN 케이블이 빠지면 Windows Image 가 뜨잖아요
그것을 Check 해서 LAN 케이블이 빠진것을 화면상에 보여줄 려고 합니다...
여러분들의 도움을 부탁 드립니다...
(참고로 주기적인 핑 테스트는 안합니다...)
1  COMMENTS
  • Profile
    김현학 2005.10.19 01:40

      김영대님 홈페이지에 가 보시면 됩니다.  
    http://www.howto.pe.kr/


    lan 에 접속했는지 검사하기

    <!--CodeS-->
    const
    MAX_NEIGHBORS = 20;
    Function NetAvailable : Boolean;
    Var
    NetRes: Array [0..MAX_NEIGHBORS] Of TNetResource;
    NNError,
    hEnum,
    EntryCount,
    NetResLen  : DWORD;
    loop1 : Integer;
    Begin
    hEnum := -1;
    Result := FALSE;
    Try
       NNError := WNetOpenEnum (RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, Nil, hEnum);
       If NNError = NO_ERROR Then
       Begin
         While NNError <> ERROR_NO_MORE_ITEMS Do
         Begin
           EntryCount := 1;
           NetResLen := SizeOf (NetRes);
           NNError := WNetEnumResource (hEnum, EntryCount, @NetRes, NetResLen);
           If (NNError = NO_ERROR) Then
           Begin
             For loop1 := 1 to EntryCount Do
             Begin
               If Pos ('Microsoft', NetRes[0].lpProvider) = 1 Then
               Begin
                 Result := TRUE;
                 Break
               End
             End
           End
           Else
           Begin
             Break
           End
         End;
         WNetCloseEnum (hEnum)
         // close enum
       End
    Except
       On exception Do
         If DEBUG Then
         Begin
           ShowMessage ('Network Neighborhood Detection Failed.')
         End;
    End
    End;
    <!--COdeE-->