如何用PowerShell获取电脑所有固件信息?脚本执行报错求助
在PowerShell中获取已安装固件的名称和版本信息
你遇到的错误是因为Win32_FirmwareDriver不是Windows系统中存在的WMI类,所以Get-WmiObject无法识别它。下面是几种可行的解决方案:
方法1:获取BIOS核心固件信息
BIOS是电脑最基础的固件,可以通过Win32_BIOS类快速获取关键信息:
# 推荐使用Get-CimInstance(替代已弃用的Get-WmiObject) Get-CimInstance -Class Win32_BIOS | Select-Object Manufacturer, Name, Version, ReleaseDate
如果需要兼容旧版PowerShell,也可以用:
Get-WmiObject -Class Win32_BIOS | Select-Object Manufacturer, Name, Version, ReleaseDate
方法2:获取硬件设备的固件信息
显卡、网卡、存储设备等硬件的固件信息,可以通过PNP设备属性提取:
# 遍历所有PNP设备,筛选出带固件版本的条目 Get-PnpDevice | Where-Object { $_.FriendlyName } | ForEach-Object { $firmwareVer = Get-PnpDeviceProperty -InstanceId $_.InstanceId -KeyName DEVPKEY_Device_FirmwareVersion | Select-Object -ExpandProperty Data [PSCustomObject]@{ 设备名称 = $_.FriendlyName 固件版本 = $firmwareVer } } | Where-Object { $_.固件版本 }
方法3:用DISM命令查看系统固件详情
通过DISM命令可以获取更全面的固件状态信息:
DISM /Online /Get-FirmwareInfo
内容的提问来源于stack exchange,提问作者gameandscripts
相关产品推荐
相关产品推荐

