如何使用Windows自带的PnPUtil命令来禁用/停用和启用硬件设备
我来详细讲解一下如何使用 Windows 自带的 PnPUtil
命令来禁用(停用) 和启用硬件设备。
PnPUtil
(即插即用实用工具) 是一个功能强大的命令行工具,主要用于安装、卸载、枚举和修改驱动程序包。对于硬件的启用和禁用,它通过操作设备的实例 ID 来实现。
核心概念:什么是“实例 ID”?
每个硬件设备在系统中都有一个唯一的标识符,称为“实例 ID”。你需要先找到目标设备的实例 ID,才能用它来执行操作。
实例 ID 的格式通常类似于:
PCI\VEN_8086&DEV_15B7&SUBSYS_075F1028&REV_01\3&11583659&0&A0
操作步骤
第 1 步:以管理员身份运行命令行
所有 PnPUtil
命令都需要管理员权限。
在开始菜单搜索“cmd”或“命令提示符”。
右键单击它,选择“以管理员身份运行”。
也可以使用 PowerShell (管理员)。
第 2 步:枚举设备,获取实例 ID
在禁用或启用之前,你需要先找到目标设备的实例 ID。
pnputil /enum-devices
这个命令会列出系统中所有的硬件设备,并显示它们的实例 ID、设备描述和状态(Started
表示已启用,Stopped
或 Disabled
表示已禁用)。
由于输出内容非常多,你可以使用管道符 |
和 findstr
命令来过滤结果。
示例: 我想找到我的无线网卡(Wi-Fi Adapter)。
pnputil /enum-devices | findstr /i "wireless wifi"
/i
表示忽略大小写。你也可以搜索设备型号的关键字,如
Realtek
,Intel
,Bluetooth
(蓝牙) 等。
输出结果示例:
Instance ID: PCI\VEN_8086&DEV_08B1&SUBSYS_40708086&REV_73\3&11583659&0&A0 Device Description: Intel(R) Wireless-AC 9560 160MHz Status: Started
这里,PCI\VEN_8086...&0&A0
就是这个无线网卡的实例 ID。请复制下你想要操作的设备的实例 ID。
小技巧:获取更精确的列表
你也可以使用以下命令,它们有时能提供更清晰的信息:
pnputil /enum-devices /connected
(仅列出已连接的设备)
pnputil /enum-devices /disabled
(仅列出已禁用的设备)
pnputil /enum-devices /class <设备类>
(按设备类枚举,如net
网络适配器,media
声卡显卡,bluetooth
蓝牙等)例如:
pnputil /enum-devices /class net
第 3 步:执行操作
一旦你获得了设备的实例 ID,就可以使用以下命令来启用或禁用它。
1. 禁用设备 (停用硬件)
使用 /disable-device
参数,后跟设备的实例 ID。
命令格式:pnputil /disable-device "<实例ID>"
示例: 禁用上面找到的无线网卡。
pnputil /disable-device "PCI\VEN_8086&DEV_08B1&SUBSYS_40708086&REV_73\3&11583659&0&A0"
如果成功,命令行会提示:Disabling device instance: <实例ID> succeeded.
2. 启用设备
使用 /enable-device
参数,后跟设备的实例 ID。
pnputil /enable-device "<实例ID>"
示例: 重新启用刚才禁用的无线网卡。
pnputil /enable-device "PCI\VEN_8086&DEV_08B1&SUBSYS_40708086&REV_73\3&11583659&0&A0"
如果成功,命令行会提示:Enabling device instance: <实例ID> succeeded.
完整流程示例:禁用并启用一个设备(如蓝牙)
打开管理员命令行
查找蓝牙设备的实例 ID
pnputil /enum-devices | findstr /i "bluetooth"
假设输出结果中的实例 ID 是:
USB\VID_8087&PID_0026\5&378f5d8e&0&10
禁用蓝牙设备
pnputil /disable-device "USB\VID_8087&PID_0026\5&378f5d8e&0&10"
系统提示禁用成功,蓝牙功能立刻失效。
(需要时)重新启用蓝牙设备
pnputil /enable-device "USB\VID_8087&PID_0026\5&378f5d8e&0&10"
系统提示启用成功,蓝牙功能恢复。
重要注意事项和常见问题
管理员权限:务必使用以管理员身份运行的命令提示符或 PowerShell,否则会报“访问被拒绝”的错误。
引号的使用:如果实例 ID 中包含空格或特殊字符,必须用英文双引号
""
将其括起来。这是一个好习惯,建议每次都加上。精确复制实例 ID:实例 ID 非常长且复杂,最好直接从命令行复制粘贴,手动输入很容易出错。可以使用鼠标在命令行中选中文本,按回车键即可复制。
禁用关键设备的风险:不要禁用你不认识的设备,尤其是系统关键硬件(如磁盘驱动器、显示适配器、处理器等),否则可能导致系统蓝屏、无法启动或功能异常。
设备管理器:对于大多数用户来说,使用图形界面的设备管理器(在开始菜单上右键即可看到)来禁用/启用硬件更为简单直观。
PnPUtil
的优势在于可以编写脚本进行批量操作或用于远程管理。
总结
操作 | 命令 | 示例 |
---|---|---|
列出所有设备 | pnputil /enum-devices | - |
查找特定设备 | pnputil /enum-devices | findstr /i "关键词" | pnputil ... | findstr /i "intel" |
禁用设备 | pnputil /disable-device "<实例ID>" | pnputil /disable-device "PCI\VEN_...&0&A0" |
启用设备 | pnputil /enable-device "<实例ID>" | pnputil /enable-device "PCI\VEN_...&0&A0" |
希望这个详细的指南能帮助你成功使用 PnPUtil
管理硬件设备!