从 Windows 注册表获取 MAC 地址

从 Windows 注册表获取 MAC 地址

我有另一台机器的注册表,我需要从以太网适配器中提取 mac 地址

适配器设置HKEY_LOCAL_MACHINE\old_registry\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0009

并且有参数:

BIMacAdddress_l (REG_DWORD) = f315d433 它是十六进制,十进制是4078294067

当在子菜单中选择“编辑二进制数据”时,我看到如下内容:

0000 33 D4 15 F3(这里有两个奇怪的符号)

33 D4 15 F3 看起来像我正在寻找的 MAC 地址,但它只有 8 个字符,而普通 MAC 有 12 个字符。

带有注册表树的屏幕截图: http://i.imgur.com/m8ssP.png

那么我做错了什么?

答案1

我假设 MAC 地址是 00:18:f3:15:d4:33(属于主板制造商“华硕”)。

诀窍在于 MAC 地址有 48 位,并分为高位 (BIMacAddress_h) 和低位 (BIMacAddress_l) 部分保存。因此,您必须将两个部分组合起来,然后使用所得 64 位数字的低 48 位。然后您便会得到上面的 MAC 地址。

答案2

嘿,四个零也被视为 mac 地址,因此它是一个有效的 mac - 000033D415F3。

相关内容