DevCon工具用于Windows命令行驱动管理,包括下载配置、设备列举、启停、更新、卸载、硬件扫描及信息导出。需管理员权限运行,支持精准设备操作与批量部署。

如果您需要在Windows系统中通过命令行方式管理设备驱动程序,则可以使用微软提供的DevCon工具(devcon.exe)。以下是使用该工具执行常见驱动操作的步骤:
一、下载并配置DevCon工具
DevCon并非Windows默认内置工具,需从Windows Driver Kit(WDK)中提取或单独获取。配置完成后,才能在命令提示符中调用。
1、访问微软官方文档页面,下载与当前Windows版本匹配的WDK安装包。
2、运行WDK安装程序,选择自定义安装路径,并勾选“Tools”组件。
3、在安装目录中定位到tools\devcon\子文件夹,找到devcon.exe文件。
4、将该文件复制到系统路径(如C:\Windows\System32)或将其所在目录添加至环境变量PATH中。
5、以管理员身份打开命令提示符,输入devcon help验证是否可执行。
二、列出系统中所有设备及其驱动状态
该操作用于查看当前系统识别的全部硬件设备及对应驱动加载情况,便于后续精准操作。
1、在管理员命令提示符中输入:devcon listclass *,显示所有设备类。
2、输入:devcon find *,列出所有已识别设备的硬件ID和状态。
3、输入:devcon status @* ,检查所有设备驱动是否正常运行。
4、若需筛选特定类型设备,例如USB设备,可执行:devcon find =usb。
三、启用或禁用指定设备
通过禁用/启用设备可模拟物理拔插行为,常用于解决驱动冲突或临时关闭故障设备。
1、先执行devcon findall =net获取目标网络适配器的实例ID(如PCI\VEN_10EC&DEV_8168&SUBSYS...)。
2、禁用该设备:devcon disable "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
3、启用该设备:devcon enable "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
4、确认状态变化:devcon status "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
四、更新指定设备的驱动程序
该方法绕过图形界面,直接指定.inf文件路径完成驱动更新,适用于批量部署或无GUI环境。
1、确保目标.inf文件位于本地路径,例如C:\drivers\mydriver.inf。
2、执行命令:devcon update C:\drivers\mydriver.inf "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
3、若需强制重装(即使驱动版本相同),添加-f参数:devcon -f update ...。
五、卸载设备并删除驱动程序包
此操作彻底移除设备实例及其关联驱动文件,适用于清除残留驱动或准备重新安装。
1、先查询设备当前状态:devcon status "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
2、卸载设备但保留驱动:devcon remove "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
3、完全卸载并删除驱动包:devcon dp_delete -f "PCI\VEN_10EC&DEV_8168&SUBSYS..."。
4、清理后可通过devcon find =net确认设备是否已从列表中消失。
六、扫描检测新硬件并触发驱动安装
模拟“扫描检测硬件改动”功能,促使系统重新枚举总线并为新接入或未识别设备匹配驱动。
1、插入待识别的USB设备或启动虚拟机中的新硬件。
2、在管理员命令提示符中执行:devcon rescan。
3、等待数秒后,系统自动触发PnP枚举流程。
4、使用devcon findall =unknown确认是否有新设备被识别为未知设备。
七、导出设备信息用于离线分析
将当前设备树结构与驱动信息保存为文本文件,便于技术支持或日志归档。
1、执行:devcon hwids * > C:\device_report.txt,导出所有设备的硬件ID。
2、执行:devcon driverfiles * >> C:\device_report.txt,追加驱动文件路径信息。
3、执行:devcon stack * >> C:\device_report.txt,追加驱动堆栈详情。
4、生成的文本文件中,每台设备的硬件ID和驱动服务名均以明文形式呈现,可用于后续匹配INF或调试。









