批处理设备

批处理设备

Windows现在有一个改进的库,可以在批处理脚本中使用,以处理连接到系统的设备。 这就是所谓的设备控制台 - DevCon.exe

Windows驱动程序开发人员和测试人员可以使用DevCon来验证是否正确安装并配置了驱动程序,包括正确的INF文件,驱动程序堆栈,驱动程序文件和驱动程序包。 也可以在脚本中使用DevCon命令(启用,禁用,安装,启动,停止和继续)来测试驱动程序。 DevCon是一个在本地计算机和远程计算机上执行设备管理功能的命令行工具。

显示驱动程序和设备信息DevCon可以显示本地计算机和远程计算机(运行Windows XP及更早版本)上的驱动程序和设备的以下属性 -

  • 硬件ID,兼容的ID和设备实例ID。 这些标识符在设备标识字符串中有详细的描述。
  • 设备设置类。
  • 设备设置类中的设备。
  • INF文件和设备驱动程序文件。
  • 驱动程序包的细节。
  • 硬件资源。
  • 设备状态。
  • 预期的驱动程序堆栈。
  • 驱动程序商店中的第三方驱动程序包。
  • 搜索设备DevCon可以通过硬件ID,设备实例ID或设备设置类在本地或远程计算机上搜索已安装和未安装的设备。
  • 更改设备设置DevCon可以通过以下方式更改本地计算机上即插即用(PnP)设备的状态或配置 -
    • 启用设备。
    • 禁用设备。
    • 更新驱动程序(交互式和非交互式)。
    • 安装一个设备(创建一个devnode并安装软件)。
    • 从设备树中删除设备并删除设备堆栈。
    • 重新扫描即插即用设备。
    • 添加,删除和重新排序根枚举设备的硬件ID。
    • 更改设备设置类的上部和下部过滤器驱动程序。
    • 从驱动程序存储添加和删除第三方驱动程序包。

DevCon(DevCon.exe)包含在为桌面应用程序安装WDK,Visual Studio和Windows SDK时。 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 - 有条件的重启。 只有在需要重新启动以使更改生效时,才能在完成操作后重新启动系统。
  • command - 指定一个DevCon命令。
  • 要列出并显示计算机上的设备信息,请使用以下命令 -
    • DevCon HwIDs
    • DevCon Classes
    • DevCon ListClass
    • DevCon DriverFiles
    • DevCon DriverNodes
    • DevCon Resources
    • DevCon Stack
    • DevCon Status
    • DevCon Dp_enum
  • 要搜索有关计算机上设备的信息,请使用以下命令 -
    • DevCon Find
    • DevCon FindAll
  • 要操纵设备或更改其配置,请使用以下命令 -
    • DevCon Enable
    • DevCon Disable
    • DevCon Update
    • DevCon UpdateNI
    • DevCon Install
    • DevCon Remove
    • DevCon Rescan
    • DevCon Restart
    • DevCon Reboot
    • 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.txt文件中以供日志记录或以后查看。 该命令使用通配符(*)表示所有设备,并使用重定向字符(>)将输出重定向到status.txt文件。

devcon status * > status.txt

以下命令通过在DevCon Enable命令中指定Printer Setup类来启用计算机上的所有打印机设备。 该命令包含/r参数,如果需要使系统有效,则重新引导系统。

devcon /r enable=Printer

以下命令使用DevCon安装操作在本地计算机上安装键盘设备。 该命令包含设备的INF文件(keyboard.inf)和硬件ID(* PNP030b)的完整路径。

devcon /r install c:\windows\inf\keyboard.inf *PNP030b

以下命令将扫描计算机中的新设备。

devcon scan

以下命令将重新扫描新设备的计算机。

devcon rescan