使用PowerShell获取缺少驱动程序的设备列表

wvt8vs2t  于 2023-06-06  发布在  Shell
关注(0)|答案(3)|浏览(815)

这是在一个Windows XP专业系统(是的,我知道旧的操作系统)我一直在寻找一种方法来获得一个列表的所有设备没有安装驱动程序,或有问题的驱动程序在使用中。
我试过了

$foo = Get-WmiObject Win32_PNPEntity | Where-Object{$_.ConfigManagerErrorcode -ne 0}

问题是,它似乎并没有得到所有的例外。
例如,具有指纹扫描仪的HP笔记本电脑在设备管理器中显示为其他设备- USB设备。使用我列出的一个内衬未检测到这一点。
有没有一种方法来获得一个数组的失踪的驱动程序使用powershell?

yjghlzjz

yjghlzjz1#

#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

nue99wik

nue99wik2#

我这样做时,我有一些设备,在那里没有被拿起我的脚本,给予它一个尝试,看看它是否检测到您的设备。

$foo = Get-WmiObject Win32_PNPEntity | Where-Object{$_.Availability -eq 11 -or $_.Availability -eq 12}
mwkjh3gx

mwkjh3gx3#

请看我更完整的示例here

Get-WmiObject Win32_PNPEntity | Where-Object{[string]::IsNullOrEmpty($_.ClassGuid) } | Select-Object Name,Present,Status,DeviceID | Sort-Object Name

相关问题