命令行管理Windows设备
本文最后更新于26天前,其中的信息可能已经有所发展或是发生改变。

1.Devcon

DevCon (DevCon.exe) 是一种命令行工具,用于显示有关运行 Windows 的计算机上的设备的详细信息。 你也可以使用 DevCon 启用、禁用、安装、配置以及删除设备。 DevCon 使用以下语法。

devcon [/r] command [arguments]

DevCon 最初是且始终是代码示例,旨在作为示例,而不是要依赖的工具。 为了响应其受欢迎程度,我们创建了一些工具来替换 DevCon 的功能,同时遵循最佳做法并添加新功能。 请将 DevCon 使用情况替换为下面所述的解决方案。

2.PnPUtil

PnPUtil 是一种收件箱工具,允许用户查看有关设备和驱动程序的信息并更改其状态。

同时也是一种命令行工具,可让管理员对 驱动程序包执行操作。 示例包括:

  • 将驱动程序包添加到 驱动程序存储区。
  • 在计算机上安装驱动程序包。
  • 从驱动程序存储区中删除驱动程序包。
  • 枚举当前位于驱动程序存储区中的驱动程序包。 仅列出非内置包的驱动程序包。 内置驱动程序包是 Windows 或其 service pack 的默认安装中包含的程序包。
Microsoft PnP 工具
​
PNPUTIL [/add-driver <...> | /delete-driver <...> |
        /export-driver <...> | /enum-drivers |
        /enum-devices [<...>] | /enum-interfaces [<...>] |
        /disable-device <...> | /enable-device <...> |
        /restart-device <...> | /remove-device <...> |
        /scan-devices [<...>] | /?]
​
命令:
​
 /add-driver <filename.inf | *.inf> [/subdirs] [/install] [/reboot]
​
   å°†é©±åŠ¨ç¨‹åºåŒ…添加到驱动程序存储中。
     /subdirs - 遍历驱动程序包的子目录。
     /install - 在任何匹配的设备上安装/更新驱动程序。
     /reboot - 根据需要重新启动系统以完成此操作。
​
   ç¤ºä¾‹:
     æ·»åŠ é©±åŠ¨ç¨‹åºåŒ…:
       pnputil /add-driver x:\driver.inf
     æ·»åŠ å¤šä¸ªé©±åŠ¨ç¨‹åºåŒ…:
       pnputil /add-driver c:\oem\*.inf
     æ·»åŠ å’Œå®‰è£…驱动程序包:
       pnputil /add-driver device.inf /install
​
 /delete-driver <oem#.inf> [/uninstall] [/force] [/reboot]
​
   ä»Žé©±åŠ¨ç¨‹åºå­˜å‚¨ä¸­åˆ é™¤é©±åŠ¨ç¨‹åºåŒ…。
     /uninstall - 从任何使用驱动程序包的设备中卸载驱动程序包。
     /force - 删除驱动程序包,即使有设备正在使用它。
     /reboot - 根据需要重新启动系统以完成此操作。
​
   ç¤ºä¾‹:
     åˆ é™¤é©±åŠ¨ç¨‹åºåŒ…:
       pnputil /delete-driver oem0.inf
     å¼ºåˆ¶åˆ é™¤é©±åŠ¨ç¨‹åºåŒ…:
       pnputil /delete-driver oem1.inf /force
​
 /export-driver <oem#.inf | *> <目标目录>
​
   ä»Žé©±åŠ¨ç¨‹åºå­˜å‚¨ä¸­å°†é©±åŠ¨ç¨‹åºåŒ…导出到目标目录中。
​
   ç¤ºä¾‹:
     å¯¼å‡ºé©±åŠ¨ç¨‹åºåŒ…:
       pnputil /export-driver oem6.inf .
     å¯¼å‡ºæ‰€æœ‰é©±åŠ¨ç¨‹åºåŒ…:
       pnputil /export-driver * c:\backup
​
 /enum-drivers
​
   æžšä¸¾é©±åŠ¨ç¨‹åºå­˜å‚¨ä¸­çš„所有第三方驱动程序包。
​
   ç¤ºä¾‹:
     æžšä¸¾æ‰€æœ‰ OEM 驱动程序包:
       pnputil /enum-drivers
​
 /disable-device <instance ID> | /deviceid <device ID> [/reboot]
​
   ç¦ç”¨ç³»ç»Ÿä¸Šçš„设备。
     /deviceid <device ID> - 禁用带匹配设备 ID 的所有设备。
     /reboot - 根据需要重新启动系统以完成此操作。
   ç¤ºä¾‹:
     ç¦ç”¨è®¾å¤‡:
       pnputil /disable-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
     ç¦ç”¨å…·æœ‰ç‰¹å®šç¡¬ä»¶/兼容 ID 的所有设备:
       pnputil /disable-device /deviceid "USB\Class_03"
 /enable-device <instance ID> | /deviceid <device ID> [/reboot]
​
   å¯ç”¨ç³»ç»Ÿä¸Šçš„设备。
     /deviceid <device ID> - 启用带匹配设备 ID 的所有设备。
     /reboot - 根据需要重新启动系统以完成此操作。
   ç¤ºä¾‹:
     å¯ç”¨è®¾å¤‡:
       pnputil /enable-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
     å¯ç”¨å…·æœ‰ç‰¹å®šç¡¬ä»¶/兼容 ID 的所有设备:
       pnputil /enable-device /deviceid "USB\Class_03"
 /restart-device <instance ID> | /deviceid <device ID> [/reboot]
​
   é‡å¯ç³»ç»Ÿä¸Šçš„设备。
     /deviceid <device ID> - 重启带匹配设备 ID 的所有设备。
     /reboot - 根据需要重新启动系统以完成此操作。
   ç¤ºä¾‹:
     é‡å¯è®¾å¤‡:
       pnputil /restart-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
     é‡æ–°å¯åŠ¨å…·æœ‰ç‰¹å®šç¡¬ä»¶/兼容 ID 的所有设备:
       pnputil /restart-device /deviceid "USB\Class_03"
 /remove-device <instance ID> | /deviceid <device ID> [/subtree] [/reboot]
​
   å°è¯•ä»Žç³»ç»Ÿä¸­åˆ é™¤è®¾å¤‡ã€‚
     /deviceid <device ID> - 删除带匹配设备 ID 的所有设备。
     /subtree - 删除整个设备子树,包括任何子设备。
     /reboot - 根据需要重新启动系统以完成此操作。
   ç¤ºä¾‹:
     åˆ é™¤è®¾å¤‡:
       pnputil /remove-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
     åˆ é™¤å…·æœ‰ç‰¹å®šç¡¬ä»¶/兼容 ID 的所有设备:
       pnputil /remove-device /deviceid "USB\Class_03"
 /scan-devices [/instanceid <实例 ID>] [/async]
​
   æ‰«æç³»ç»Ÿä»¥æŸ¥æ‰¾ä»»ä½•è®¾å¤‡ç¡¬ä»¶æ›´æ”¹ã€‚
     /instanceid <实例 ID> - 在设备子树中扫描更改。
     /async - 异步扫描更改。
​
   ç¤ºä¾‹:
     æ‰«æè®¾å¤‡:
       pnputil /scan-devices
​
 /enum-devices [/connected | /disconnected] [/instanceid <实例 ID>]
               [/class <name | GUID>] [/problem [<code>]] [/deviceids]
               [/relations] [/drivers]
​
   æžšä¸¾ç³»ç»Ÿä¸Šçš„所有设备。
     /connected | /disconnected - 按连接的设备筛选或
                                  按断开连接的设备筛选。
     /instanceid <实例 ID> - 按设备实例 ID 筛选。
     /class <名称 | GUID> - 按设备类名称或 GUID 筛选。
     /problem [<代码>] - 按出现问题的设备筛选或
                         æŒ‰ç‰¹å®šé—®é¢˜ä»£ç ç­›é€‰ã€‚
     /bus [<name | GUID>]-显示总线枚举器名称和总线类型 GUID 或
                            按总线枚举器名称或总线类型 GUID 筛选。
     /deviceids-显示硬件/兼容 ID。
     /relations - 显示父级和子级设备关系。
     /drivers - 显示匹配的驱动程序和已安装的驱动程序。
     /stack-显示设备堆栈信息。
     /interfaces - 显示设备接口。
     /properties - 显示所有设备属性。
​
   ç¤ºä¾‹:
     ä»…枚举系统上已连接的设备:
       pnputil /enum-devices /connected
     æžšä¸¾å…·æœ‰ç‰¹å®šå®žä¾‹ ID 的设备:
       pnputil /enum-devices /instanceid "ACPI\PNP0A08\1"
     æžšä¸¾å…·æœ‰ç‰¹å®šç±»çš„所有设备:
       pnputil /enum-devices /class Display
       pnputil /enum-devices /class {4d36e97d-e325-11ce-bfc1-08002be10318}
     æžšä¸¾å…·æœ‰ç‰¹å®šé—®é¢˜ä»£ç çš„所有设备:
       pnputil /enum-devices /problem 28
       pnputil /enum-devices /problem 0xA
     æžšä¸¾å…·æœ‰ç‰¹å®šæ€»çº¿çš„所有设备:
       pnputil /enum-devices /bus PCI
       pnputil /enum-devices /bus {c8ebdfb0-b510-11d0-80e5-00a0c92542e3}
     æžšä¸¾å…·æœ‰é—®é¢˜çš„所有设备并显示硬件/兼容 ID:
       pnputil /enum-devices /problem /deviceids
​
 /enum-interfaces [/enabled | /disabled] [/class <GUID>]
​
   æžšä¸¾ç³»ç»Ÿä¸Šçš„所有设备接口。
     /enabled | /disabled - 按启用的接口筛选或
                            按禁用的接口筛选。
     /class <GUID> - 按接口类 GUID 筛选。
​
   ç¤ºä¾‹:
     ä»…枚举系统上的已启用接口:
       pnputil /enum-interfaces /enabled
     æžšä¸¾å…·æœ‰ç‰¹å®šæŽ¥å£ç±» GUID 的所有接口:
       pnputil /enum-interfaces /class {884b96c3-56ef-11d1-bc8c-00a0c91405dd}
​
 /?
​
   æ˜¾ç¤ºä½¿ç”¨æƒ…况屏幕。
​

3.等价表

Devcon 命令说明替代方法
类列出所有设备安装类。pnputil /enum-classes
disable禁用设备。pnputil /disable-device
driverfiles列出设备的已安装驱动程序文件。pnputil /enum-drivers /files
drivernodes列出设备的驱动程序节点。pnputil /enum-devices /drivers
enable启用设备。pnputil /enable-device
find查找设备。pnputil /enum-devices /connected
findall查找设备,包括当前未附加的设备。pnputil /enum-devices
hwids列出设备的硬件 ID。pnputil /enum-devices /deviceids
安装创建测试设备并安装驱动程序。devgen /add /bus ROOT pnputil /add-driver <INF name> /install
listclass列出安装程序类中的所有设备。pnputil /enum-devices /class <name 或 GUID>
重新 启动重新启动本地计算机。shutdown /r /t 0
删除删除设备。pnputil /remove-device
重新扫描扫描新硬件。pnputil /scan-devices
resources列出设备的硬件资源。pnputil /enum-devices /resources
restart重启设备。pnputil /restart-device
堆栈列出设备的预期驱动程序堆栈。pnputil /enum-devices /stack
status列出设备的运行状态。pnputil /enum-devices
update手动更新设备。pnputil /add-driver <INF name> /install
updateni手动更新设备 (非交互式) 。pnputil /add-driver <INF name> /install
dp_add添加 (安装) 第三方 (OEM) 驱动程序包。pnputil /add-driver <INF 名称>
dp_delete删除第三方 (OEM) 驱动程序包。pnputil /delete-driver
dp_enum列出此计算机上安装的第三方 (OEM) 驱动程序包。pnputil /enum-drivers
等价表

参考文章

[1] 设备控制台 (DevCon.exe) 命令 – Windows drivers | Microsoft Learn

[2] PnPUtil – Windows drivers | Microsoft Learn

点击数:0

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇