[英]How to tell if a network adapter is removable on Windows
如何判断通过 Win32 GetAdaptersInfo()或GetAdaptersAddresses()函数检索到的给定网络适配器是否是可移动的,例如 USB、SmartCard 等?
这些功能的文档似乎不包含任何获取该信息的方法,所以我假设我必须 go 询问 Windows 对于我发现它是否以某种方式可移动的每个设备。
你有什么建议?
如果您考虑一下,那么所有适配器都是可拆卸的(例如 PCI、USB、虚拟等)即使是内置的 NIC 通常也可以在 BIOS 中禁用。
您真正想知道的是每个适配器的“接口类型”。 此信息可在 Win32_NetworkAdapterConfiguration Class 的标题属性中找到。 您可以使用它(以及课程中的其他信息)来确定每个设备如何连接到机器以及它是否正在使用中。
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT Caption, IPEnabled FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem in colItems
Wscript.Echo objItem.IPEnabled & " " & objItem.Caption
Next
此外,Win32_NetworkAdapterConfiguration 对于 IPEnabled 属性非常有用,因为它可以让您查看 TCP/IP 是否已在适配器上绑定和启用。
这是一个示例 output
False [00000001] 1394 Net Adapter
False [00000002] RAS Async Adapter
False [00000003] WAN Miniport (L2TP)
False [00000004] WAN Miniport (PPTP)
False [00000005] WAN Miniport (PPPOE)
False [00000006] Direct Parallel
False [00000007] WAN Miniport (IP)
False [00000008] Packet Scheduler Miniport
True [00000009] Wireless-B PCI Adapter
False [00000010] Packet Scheduler Miniport
False [00000011] Cisco AnyConnect VPN Virtual Miniport Adapter for Windows
False [00000012] Packet Scheduler Miniport
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.