我正在使用Win32_PnPEntity类来获取计算机中的所有设备,但Win32_PnPEntity类没有列出隐藏的设备。 Windows设备管理器中的隐藏设备状态为“当前,此硬件设备未连接到计算机。(代码45)”,可以通过单击设备管理器中的菜单选项来显示:查看>显示隐藏的设备(Windows 10)。
有谁知道如何获取隐藏的设备?
答案 0 :(得分:1)
您可以使用以下命令进行操作:
Get-PnpDevice -class "Ports"
Status Class FriendlyName
------ ----- ------------
OK Ports Communications Port (COM1)
Unknown Ports Silicon Labs Dual CP2105 USB to UART Bridge: Enhanced
Unknown Ports Arduino Uno (COM5)
Unknown Ports Silicon Labs Dual CP2105 USB to UART Bridge: Standard
OK Ports Prolific USB-to-Serial Comm Port (COM6)
在这里您可以看到我的COM端口已断开连接(状态:未知)
答案 1 :(得分:0)
您可以使用ConfigManagerErrorCode
。请参阅Win32_PnPEntity和Win32_PnPEntity MSDN。你没有提到你是使用PowerShell还是C#来编写脚本,我假设是PowerShell。
$result = @{Expression = {$_.Name}; Label = "Device Name"},
@{Expression = {$_.ConfigManagerErrorCode} ; Label = "Status Code" }
Get-WmiObject -Class Win32_PnpEntity -ComputerName localhost -Namespace Root\CIMV2 | Where-Object {$_.ConfigManagerErrorCode -gt 0 } | Format-Table $result