近日,我进行了 WiFi7 无线网卡的识别测试,遇到了一些有趣的问题和解决方案,与大家分享。首先,以往我们在 Windows 上识别网卡属性,经常使用的是 Win32_NetworkAdapter 类。只要其中返回的 PhysicalAdapter
属性为 true
,我们就可以判断这是一张物理网卡。但是在 WiFi7 网卡上进行相同的测试时,我发现 Win32_NetworkAdapter
返回的所有 PhysicalAdapter
属性都是 false
。进一步的研究表明,Win32_NetworkAdapter
其实已经被标记为过时,现在推荐使用的是 MSFT_NetAdapter 类。
使用 MSFT_NetAdapter
进行查询时,其中的 ConnectorPresent
属性可以帮助我们判断这是否是一张物理网卡。然而,对于 WiFi7 无线网卡来说,每次查询都会返回 5 个具有相同 DriverDescription
属性的 adapters。这个情况不论是在 MediaTek、Realtek 还是其他品牌的 WiFi7 网卡上都会出现。
经过仔细观察,我发现这 5 个 adapters 中的 PnPDeviceID
都是一样的。这意味着它们实际上是来源于同一张物理网卡。因此,我们可以使用 PnPDeviceID
属性来确定它们实际上是同一张网卡。
为了帮助其他人理解和识别 MSFT_NetAdapter
的各种属性,我还开源了一个简单的小工具:NetAdapterInspector。你可以使用这个工具来查看系统上所有的 MSFT_NetAdapter
返回的所有属性。
总之,随着技术的进步,我们在识别和处理硬件设备时需要不断地更新知识和方法。希望这次的分享能够帮助到从事相关工作的朋友们。