[英]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.