Code: Alles auswählen
uses
jwanb30;
function MacAdresse():string; //Mac Adresse auslesen
function GetAdapterInfo(Lana: UChar): String;
implementation
function GetAdapterInfo(Lana: UChar): String;
var
Adapter: TAdapterStatus;
NCB: TNCB;
begin
FillChar(NCB, SizeOf(NCB), 0);
NCB.ncb_command := NCBRESET;
NCB.ncb_lana_num := Lana;
if Netbios(@NCB) <> NRC_GOODRET then
begin
Result := '';
Exit;
end;
FillChar(NCB, SizeOf(NCB), 0);
NCB.ncb_command := 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) <> NRC_GOODRET then
begin
Result := '';
Exit;
end;
Result :=
IntToHex(Byte(Adapter.adapter_address[0]), 2) + '-' +
IntToHex(Byte(Adapter.adapter_address[1]), 2) + '-' +
IntToHex(Byte(Adapter.adapter_address[2]), 2) + '-' +
IntToHex(Byte(Adapter.adapter_address[3]), 2) + '-' +
IntToHex(Byte(Adapter.adapter_address[4]), 2) + '-' +
IntToHex(Byte(Adapter.adapter_address[5]), 2);
end;
function MacAdresse():string; //Hardware Adresse der Netzwerkkarte auslesen
var
AdapterList: TLanaEnum;
NCB: TNCB;
begin
FillChar(NCB, SizeOf(NCB), 0);
NCB.ncb_command := NCBENUM;
NCB.ncb_buffer := @AdapterList;
NCB.ncb_length := SizeOf(AdapterList);
Netbios(@NCB);
if Byte(AdapterList.length) > 0 then
Result := GetAdapterInfo(AdapterList.lana[0])
else
Result := '';
end;