使用Win32 / IP帮助程序功能,如何以编程方式确定网络适配器是否在Windows上是虚拟的?
我们目前使用GetAdaptersAddresses
检索与本地计算机上的适配器关联的地址。我想避免与虚拟适配器关联的地址。
在PowerShell中,我们有以下查询,可以过滤虚拟适配器:
Get-NetAdapter | Where {$_.Virtual –eq $False}
以上如何运作?如果我们能得到一些提示?然后我们也可以在C ++代码中实现相同的逻辑。
答案 0 :(得分:0)
不幸的是,我不知道识别虚拟网络适配器的可靠方法。
至少你可以像对PS那样做,并过滤包含' Virtual'在描述中:
调用GetAdaptersInfo
(https://msdn.microsoft.com/en-us/library/windows/desktop/aa365917(v=vs.85).aspx)会得到一组PIP_ADAPTER_INFO
个结构。
他们的Description
字段包含您要检查的说明。