php guid mac地址,Delphi程序获取网卡MAC地址

这段代码展示了如何在Delphi中使用rpcrt4.dll库来生成并比较两个GUID,从而获取MAC地址的字符串表示。首先加载库,然后根据Windows平台调用不同的函数UuidCreate或UuidCreateSequential,接着对比生成的GUID的特定部分来确认MAC地址,并将其转换为十六进制字符串。
摘要由CSDN通过智能技术生成

Function GetMacAddress: string;

var

Lib: Cardinal;

Func: function(GUID: PGUID): Longint; stdcall;

GUID1, GUID2: TGUID;

begin

Result := '';

Lib := LoadLibrary('rpcrt4.dll');

if Lib <> 0 then

begin

if Win32Platform <>VER_PLATFORM_WIN32_NT then

@Func := GetProcAddress(Lib, 'UuidCreate')

else @Func := GetProcAddress(Lib, 'UuidCreateSequential');

if Assigned(Func) then

begin

if (Func(@GUID1) = 0) and

(Func(@GUID2) = 0) and

(GUID1.D4[2] = GUID2.D4[2]) and

(GUID1.D4[3] = GUID2.D4[3]) and

(GUID1.D4[4] = GUID2.D4[4]) and

(GUID1.D4[5] = GUID2.D4[5]) and

(GUID1.D4[6] = GUID2.D4[6]) and

(GUID1.D4[7] = GUID2.D4[7]) then

begin

Result :=

IntToHex(GUID1.D4[2], 2) +'-'+

IntToHex(GUID1.D4[3], 2) +'-'+

IntToHex(GUID1.D4[4], 2) +'-'+

IntToHex(GUID1.D4[5], 2) +'-'+

IntToHex(GUID1.D4[6], 2) +'-'+

IntToHex(GUID1.D4[7], 2);

end;

end;

FreeLibrary(Lib);

end;

end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值