Win7/Win10如何写脚本自动禁用/启用/重启设备管理器中的特定硬件设备(声卡等)


前言

最近声卡有点问题,每次启动电脑都要重启声卡(禁用再启用)才有声音,故自己写了个脚本自动重启设备。


一、工具选择

有多种工具可供我们来控制设备管理器的设备状态,根据情况自选即可。

1.PnPUtil

该工具是win10自带,无需下载安装,也是我们的首选工具,其可以通过命令行对设备执行启用、禁用和重启(enable/disable/restart)等操作。

你可以用Win+R快捷键,输入cmd,然后在命令行里输入pnputil,如果正常的话会出现下面这些信息:
在这里插入图片描述
如果你不是Win10以上系统,你可以用devcon或DevmanView进行操作:

2.Devcon

devcon也是较多教程用的方法,但是官网地devcon下载后文件大小很大,近1个G,感觉没必要,于是我在外网上找到了这样一篇教程:
https://stackoverflow.com/questions/47530182/enabling-disabling-a-device-in-windows-10-from-command-line
里面写了如何下载到6mb大小的devcon,下载地址如下:
https://superuser.com/questions/1002950/quick-method-to-install-devcon-exe

下载安装完后,你也可以用devcon直接进行enable/disable等操作了。

3.DevmanView:

Win7可以使用DevmanView工具来用命令行控制设备管理器状态。
下面是外网写的比较详细的一篇教程:
https://superuser.com/questions/429016/enable-disable-windows-7-device-via-command-line/560454#560454

二、步骤

教程以pnputil为例。

1.获取管理员权限

新建一个.bat文件,在文件开头写入以下两行代码:

%1 mshta vbscript:createobject("shell.application").shellexecute("%~s0","::","","runas",1)(window.close)&exit
cd /d %~dp0

该代码作用是让bat文件以管理员身份运行,不过运行的时候还需要自己手动点一下确定。

2.获取要进行操作的设备实例路径

设备管理器-属性-详细信息-设备实例路径-值。
该值用于脚本指明设备ID
在这里插入图片描述

2.用Win10自带工具pnputil进行设备重启

在bat文件后面继续加上这行代码:

pnputil /restart-device "HDAUDIO\FUNC_01&VEN_10EC&DEV_0256&SUBSYS_1B505809&REV_1000\4&375EFBD3&0&0001"

现在双击bat文件即可对设备进行重启。

3.代码总览

在这里插入图片描述

网上还有其他教程可以让该脚本开机自动启动,并且执行bat文件时不需要每次都点击确定授予管理员权限,根据需要自行添加。

猜你喜欢

转载自blog.csdn.net/Bartender_VA11/article/details/130340058