use*_*494 9 windows drivers command-line version
是否有可能在 Windows 7 系统上通过命令行获取已安装的驱动程序版本。
我已经试过了,driverquery但是没有关于驱动程序版本的信息,只有一个Linkdate。(顺便说一下,链接日期是什么意思?)
我不想要工具或程序。我需要一个 cmd 行命令。
或者我可以从注册表中获取版本吗?
Dav*_*ill 10
您可以使用以下 PowerShell 脚本:
Get-WmiObject Win32_PnPSignedDriver | select devicename, driverversion
Run Code Online (Sandbox Code Playgroud)
示例输出:
PS F:\test> Get-WmiObject Win32_PnPSignedDriver| select devicename, driverversion
devicename driverversion
---------- -------------
Generic volume 6.1.7601.17514
Generic volume 6.1.7601.17514
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume shadow copy 6.1.7600.16385
Generic volume 6.1.7601.17514
Generic volume 6.1.7601.17514
Generic volume 6.1.7601.17514
Volume Manager 6.1.7601.17514
Microsoft Virtual Drive Enumerator Driver 6.1.7601.17514
Cruzer 6.1.7600.16385
UMBus Enumerator 6.1.7601.17514
UMBus Enumerator 6.1.7601.17514
UMBus Root Bus Enumerator 6.1.7601.17514
Atheros Bluetooth Bus 6.30.1208.302
Plug and Play Software Device Enumerator 6.1.7601.17514
Terminal Server Mouse Driver 6.1.7601.17514
Terminal Server Keyboard Driver 6.1.7601.17514
WAN Miniport (SSTP) 6.1.7601.17514
WAN Miniport (PPTP) 6.1.7601.17514
WAN Miniport (PPPOE) 6.1.7601.17514
Run Code Online (Sandbox Code Playgroud)
...
您可以使用 VBScript 或 JScript 来获得所需的内容。由于您没有说明您想要哪个驱动程序的版本号,这里有一个批处理/JScript 混合脚本,可以为您将它们全部转储到控制台。将其另存为driverversion.bat:
@if (@a==@b) @end /*
:: batch portion
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%I in ('driverquery /v /nh /fo csv') do (
set idx=0
for %%x in (%%I) do (
set /a "idx+=1"
if !idx!==1 (
set /p "=%%~x version "<NUL
) else if !idx!==14 (
if exist "%%~x" (
cscript /nologo /e:jscript "%~f0" "%%~x"
) else echo N/A
)
)
)
goto :EOF
:: JScript portion */
WSH.Echo(new ActiveXObject("Scripting.FileSystemObject").GetFileVersion(WSH.Arguments(0)));
Run Code Online (Sandbox Code Playgroud)
您可以将driverquery /v驱动程序文件包含在列表中,但如果没有其他软件,您将无法从 AFAICS 文件中获取版本号。您可以使用的一种工具来自sigcheckSysIntern^WMicrosoft。
@echo off
for /f "delims=, tokens=14" %%d in ('driverquery /v /nh /fo csv') do (
for /f %%v in ('sigcheck -accepteula -q -n "%%~d"') do (
echo %%~d %%~v
)
)
Run Code Online (Sandbox Code Playgroud)
您无法从注册表中获取版本,因为该信息存储在文件本身中。
链接日期可能是链接文件的日期,即创建日期。
| 归档时间: |
|
| 查看次数: |
36581 次 |
| 最近记录: |