📅  最后修改于: 2020-11-22 17:52:53             🧑  作者: Mango
Windows现在具有改进的库,可以在批处理脚本中使用该库来处理连接到系统的设备。这就是所谓的设备控制台– DevCon.exe。
Windows驱动程序开发人员和测试人员可以使用DevCon验证驱动程序是否已正确安装和配置,包括正确的INF文件,驱动程序堆栈,驱动程序文件和驱动程序包。您还可以在脚本中使用DevCon命令(启用,禁用,安装,启动,停止和继续)来测试驱动程序。 DevCon是一个命令行工具,可在本地计算机和远程计算机上执行设备管理功能。
显示驱动程序和设备信息DevCon可以在本地计算机和远程计算机(运行Windows XP及更低版本)上显示驱动程序和设备的以下属性-
硬件ID,兼容ID和设备实例ID。这些标识符在设备标识字符串中详细描述。
设备设置程序类。
设备设置类中的设备。
INF文件和设备驱动程序文件。
驱动程序包的详细信息。
硬件资源。
设备状态。
预期的驱动程序堆栈。
驱动程序存储中的第三方驱动程序包。
搜索设备DevCon可以通过硬件ID,设备实例ID或设备安装程序类在本地或远程计算机上搜索已安装和已卸载的设备。
更改设备设置DevCon可以通过以下方式更改本地计算机上即插即用(PnP)设备的状态或配置-
启用设备。
禁用设备。
更新驱动程序(交互式和非交互式)。
安装设备(创建devnode并安装软件)。
从设备树中删除设备并删除其设备堆栈。
重新扫描即插即用设备。
添加,删除和重新排序根枚举设备的硬件ID。
更改设备设置程序类的上部和下部过滤器驱动程序。
从驱动程序存储中添加和删除第三方驱动程序包。
当您安装WDK,Visual Studio和用于桌面应用程序的Windows SDK时,将包含DevCon(DevCon.exe)。安装后,DevCon.exe工具包可在以下位置提供。
%WindowsSdkDir%\tools\x64\devcon.exe
%WindowsSdkDir%\tools\x86\devcon.exe
%WindowsSdkDir%\tools\arm\devcon.exe
devcon [/m:\\computer] [/r] command [arguments]
其中
/ m:\\ computer-在指定的远程计算机上运行命令。必须使用反斜杠。
/ r-有条件的重启。仅在需要重新启动才能使更改生效时,完成操作后才重新引导系统。
命令-指定一个DevCon命令。
要列出和显示有关计算机上设备的信息,请使用以下命令-
DevCon HwID
DevCon类别
DevCon ListClass
DevCon驱动程序文件
DevCon驱动程序节点
DevCon资源
DevCon堆栈
DevCon状态
DevCon Dp_enum
要搜索有关计算机上设备的信息,请使用以下命令-
DevCon查找
DevCon FindAll
要操作设备或更改其配置,请使用以下命令-
DevCon启用
DevCon禁用
DevCon更新
DevCon UpdateNI
DevCon安装
DevCon移除
DevCon重新扫描
DevCon重新启动
DevCon重新启动
DevCon SetHwID
DevCon ClassFilter
DevCon Dp_add
DevCon Dp_delete
以下是有关如何使用DevCon命令的一些示例。
List all driver files
以下命令使用DevCon DriverFiles操作列出系统上设备使用的驱动程序的文件名。该命令使用字符(*)来指示系统上的所有设备。由于输出内容很大,因此该命令使用重定向字符(>)将输出重定向到参考文件driverfiles.txt。
devcon driverfiles * > driverfiles.txt
以下命令使用DevCon status操作来查找本地计算机上所有设备的状态。然后,将状态保存在status.txt文件中以进行记录或以后查看。该命令使用字符(*)来表示的所有设备和所述重定向字符(>)将输出重定向到status.txt文件。
devcon status * > status.txt
以下命令通过在DevCon Enable命令中指定Printer setup类来启用计算机上的所有打印机设备。该命令包含/ r参数,如果需要使启用生效,该参数将重新引导系统。
devcon /r enable = Printer
以下命令使用DevCon Install操作在本地计算机上安装键盘设备。该命令包括设备INF文件的完整路径(keyboard.inf)和硬件ID(* PNP030b)。
devcon /r install c:\windows\inf\keyboard.inf *PNP030b
以下命令将在计算机上扫描新设备。
devcon scan
以下命令将重新扫描计算机以查找新设备。
devcon rescan