자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
델파이 XE2  사용

 

아래 소스로 맥주소를 가져오는데

 

맥주소를 못가져오는 경우가 있네요

 

어떨때 못가져오는지

 

어떻게 가져올수 있는지 알수 있을까요?
 

 

function GetMACAddress: string;

  var

    AdapterList: TLanaEnum;

    NCB: TNCB;

 

    Adapter: TAdapterStatus;

    Lana: AnsiChar;

  begin

    FillChar(NCB, SizeOf(NCB), 0);

    NCB.ncb_command := Char(NCBENUM);

    NCB.ncb_buffer := @AdapterList;

    NCB.ncb_length := SizeOf(AdapterList);

    Netbios(@NCB);

 

    if Byte(AdapterList.length) > 0 then

      begin

        Lana := AdapterList.lana[0];

 

        FillChar(NCB, SizeOf(NCB), 0);

        NCB.ncb_command := AnsiChar(NCBRESET);

        NCB.ncb_lana_num := Lana;

 

        if Netbios(@NCB) <> AnsiChar(NRC_GOODRET) then

        begin

          Result := 'mac not found';

          Exit;

        end;

 

        FillChar(NCB, SizeOf(NCB), 0);

        NCB.ncb_command := Char(NCBASTAT);

        NCB.ncb_lana_num := Lana;

        NCB.ncb_callname := '*';

        FillChar(Adapter, SizeOf(Adapter), 0);

        NCB.ncb_buffer := @Adapter;

        NCB.ncb_length := SizeOf(Adapter);

 

        if Netbios(@NCB) <> Char(NRC_GOODRET) then

        begin

          Result := 'mac not found';

          Exit;

        end;

        Result := Result + IntToHex(Byte(Adapter.adapter_address[0]), 2) + ':';

        Result := Result + IntToHex(Byte(Adapter.adapter_address[1]), 2) + ':';

        Result := Result + IntToHex(Byte(Adapter.adapter_address[2]), 2) + ':';

        Result := Result + IntToHex(Byte(Adapter.adapter_address[3]), 2) + ':';

        Result := Result + IntToHex(Byte(Adapter.adapter_address[4]), 2) + ':';

        Result := Result + IntToHex(Byte(Adapter.adapter_address[5]), 2);

      end

    else

      Result := 'mac not found';

  end;

 
번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 20072
공지 유용한 관련 사이트 관리자2 2014.03.20 58976
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 102602
79 델파이 openCV 설치 관련 질문.. [2] file 아놀드 2021.03.16 745
78 xe10.3.3 에서 단말기 Android 7.1.2 에 넣으면 오류 [1] file 광수생각 2021.03.17 250
77 로그출력 기능 문의 [2] 공수래 2021.03.17 170
76 TNetEncoding.URI.Encode함수 [1] 똘귀아빠 2021.03.17 236
75 Optimization 관련 문의 드립니다. [2] BD 2021.03.18 187
74 Access violation 'vcl270.bpl"에러가 발생 합니다. file 하루 2021.03.22 273
73 파이어몽키로 안드로이드 시스템상에서 터치 이벤트 발생이 가능한가요? [2] 유성 2021.03.24 236
72 UTF-32 변환 문제 입니다. [1] 산별아빠 2021.03.24 263
71 FDBatchMove 질문입니다. [1] 희망나라 2021.03.24 286
70 [문의]프로그램 메모리릭 오류 체크 [1] 공수래 2021.03.25 249
69 idhttp로 https주소로 post 방식으로 API insert 문의드립니다... [2] 스마일 2021.03.26 1280
68 firedac 질문입니다 [4] file 희망나라 2021.03.29 310
» 맥 어드레스를 못가져오는 경우? [1] 가나다 2021.03.29 217
66 안드로이드 APK확장파일 생성 방법 문의 드립니다. 그니 2021.03.30 312
65 TGridPanelLayout 아이템 삭제 [3] 공수래 2021.04.01 291
64 tuple 을 사용할수 없나요? [3] file 하루 2021.04.01 354
63 interbase togo [1] 희망나라 2021.04.03 339
62 firedac 질문입니다. [1] file 희망나라 2021.04.03 239
61 DataSnap ClientDataSet 연결문의드립니다. [1] 블랙 2021.04.06 384
60 interbase Desktop 가격정책 문의 [1] 밤바야 2021.04.07 555