本文整理自网络,侵删。
uses Nb30;
function NBGetAdapterAddress(ID: integer): String; //用于得到一个cuid用户唯一标识Var NC: TNCB; ADAPTE: TADAPTERSTATUS; LANAENU: TLANAENUM; intId: integer; cR: AnsiChar; strTem: String;Begin Result := ''; Try ZeroMemory(@NC, SizeOf(NC)); NC.ncb_command := Chr(NCBENUM); cR := NetBios(@NC); // Reissue enum command NC.ncb_buffer := @LANAENU; NC.ncb_length := SizeOf(LANAENU); cR := NetBios(@NC); If Ord(cR) <> 0 Then exit; ZeroMemory(@NC, SizeOf(NC)); NC.ncb_command := Chr(NCBRESET); NC.ncb_lana_num := LANAENU.lana[ID]; cR := NetBios(@NC); If Ord(cR) <> 0 Then exit; ZeroMemory(@NC, SizeOf(NC)); NC.ncb_command := Chr(NCBASTAT); NC.ncb_lana_num := LANAENU.lana[ID]; StrPCopy(NC.ncb_callname, '*'); NC.ncb_buffer := @ADAPTE; NC.ncb_length := SizeOf(ADAPTE); cR := NetBios(@NC); strTem := ''; For intId := 0 To 5 Do strTem := strTem + InttoHex(integer(ADAPTE.adapter_address[intId]), 2); Result := strTem; except Result := 'Error'; End;end;
procedure TForm1.Button1Click(Sender: TObject);
begin showmessage(NBGetAdapterAddress(0));
end;
相关阅读 >>
Delphi tstringlist 自带 split 用法
更多相关阅读请进入《Delphi》频道 >>