这是在Windows XP专业版系统上(是的,我知道旧操作系统) 我一直在寻找一种方法来获取所有未安装驱动程序的设备列表,或者使用的驱动程序存在问题。
我试过了
$foo = Get-WmiObject Win32_PNPEntity | Where-Object{$_.ConfigManagerErrorcode -ne 0}
这个问题,似乎没有得到所有例外 例如,具有指纹扫描仪的HP笔记本电脑 在设备管理器中显示为其他设备 - USB设备。 使用我列出的一个衬管未检测到这种情况。
有没有办法使用PowerShell获取缺少的驱动程序数组?
答案 0 :(得分:2)
#For formatting:
$result = @{Expression = {$_.Name}; Label = "Device Name"},
@{Expression = {$_.ConfigManagerErrorCode} ; Label = "Status Code" }
#Checks for devices whose ConfigManagerErrorCode value is greater than 0, i.e has a problem device.
Get-WmiObject -Class Win32_PnpEntity -ComputerName localhost -Namespace Root\CIMV2 | Where-Object {$_.ConfigManagerErrorCode -gt 0 } | Format-Table $result -AutoSize
Windows设备管理器中的错误代码: - https://support.microsoft.com/en-us/kb/310123 Win32_PNP实体类:https://msdn.microsoft.com/en-us/library/aa394353(v=vs.85).aspx
答案 1 :(得分:1)
我做了这个,当我有一些设备没有被我的脚本拿起时,试一试,看看它是否检测到你的设备。
$foo = Get-WmiObject Win32_PNPEntity | Where-Object{$_.Availability -eq 11 -or $_.Availability -eq 12}