Win2003里用命令行刷新硬件列表,以扫描硬件改动的实现代码
程序员文章站
2022-04-10 08:13:26
如果是想搜索新硬件,还真不知道该用什么命令。系统的pnp可以自动搜索到新硬件,所以估计也没必要手动刷新搜索。 如果是想查看设备的变动,倒是可以用命令行来实现。 方法一、使用...
如果是想搜索新硬件,还真不知道该用什么命令。系统的pnp可以自动搜索到新硬件,所以估计也没必要手动刷新搜索。
如果是想查看设备的变动,倒是可以用命令行来实现。
方法一、使用wmic(wmi命令行)
使用wmic需要管理员权限,第一次运行会进行安装和配置。
运行下面的命令可以把系统中的驱动列表保存到sysdriver.txt:
wmic sysdriver get displayname >sysdriver.txt
再次运行,然后使用fc就可以判断是否有变动
wmic sysdriver get displayname >sysdriver1.txt
fc sysdirver.txt sysdriver1.txt
方法二、使用wmi脚本
可以使用js或vbs来运行脚本,不需要管理员权限。
如下方法可以得到驱动类表,然后就可以使用fc比较两次运行的结果了:
cscript //nologo sysdriver.vbs >sysdriver.txt
sysdriver.vbs内容如下
vbscript code
on error resume next
const wbemflagreturnimmediately = &h10
const wbemflagforwardonly = &h20
strcomputer = "."
set objwmiservice = getobject("winmgmts://" & strcomputer & "/root/cimv2")
set colitems = objwmiservice.execquery("select * from win32_systemdriver", "wql", _
wbemflagreturnimmediately + wbemflagforwardonly)
for each objitem in colitems
wscript.echo objitem.displayname
next
如果是想查看设备的变动,倒是可以用命令行来实现。
方法一、使用wmic(wmi命令行)
使用wmic需要管理员权限,第一次运行会进行安装和配置。
运行下面的命令可以把系统中的驱动列表保存到sysdriver.txt:
复制代码 代码如下:
wmic sysdriver get displayname >sysdriver.txt
再次运行,然后使用fc就可以判断是否有变动
复制代码 代码如下:
wmic sysdriver get displayname >sysdriver1.txt
fc sysdirver.txt sysdriver1.txt
方法二、使用wmi脚本
可以使用js或vbs来运行脚本,不需要管理员权限。
如下方法可以得到驱动类表,然后就可以使用fc比较两次运行的结果了:
复制代码 代码如下:
cscript //nologo sysdriver.vbs >sysdriver.txt
sysdriver.vbs内容如下
复制代码 代码如下:
vbscript code
on error resume next
const wbemflagreturnimmediately = &h10
const wbemflagforwardonly = &h20
strcomputer = "."
set objwmiservice = getobject("winmgmts://" & strcomputer & "/root/cimv2")
set colitems = objwmiservice.execquery("select * from win32_systemdriver", "wql", _
wbemflagreturnimmediately + wbemflagforwardonly)
for each objitem in colitems
wscript.echo objitem.displayname
next
下一篇: VBS通过WMI获取CPU使用率的代码