DevGen 命令语法

注意

此工具不允许重新分发,不应用于生产方案。

从 Windows 11 版本 22H2 开始,可以在 WDK 的工具文件夹中找到DevGen.exe。 它允许管理员创建和删除 软件设备和 根枚举设备以进行测试。

若要运行 DevGen,请打开命令提示符窗口 (以管理员身份运行) ,导航到 tools 文件夹,并使用以下语法和参数键入命令。

DEVGEN [/add [<…>] | /remove <…>| /?]

命令

/add

创建设备。

DEVGEN /add [/bus <SWD | ROOT>] [/instanceid <instance ID>] 
            [/parent <device instance ID>] [/hardwareid <hardware ID>] 
            [/compatibleid <compatible ID>] [/wait [<timeout in MS>]] 
            [/unplug] [/subtree]

标记:

/bus <SWD | ROOT> - SWD 枚举将在重新启动后断开连接的软件设备。 ROOT 枚举在重新启动后将保留的根设备。 默认情况下,将创建软件设备。

/instanceid <instance ID> - 生成设备时使用的唯一实例 ID。

/parent <device instance ID> - 要枚举其下的设备的父设备。 仅软件设备支持。 默认情况下,设备在 HTREE\ROOT\0 下枚举。

/hardwareid <hardware ID> - 在生成的设备上设置的硬件 ID。 可以使用此参数多次设置多个硬件 ID。

/compatibleid <compatible ID> - 在生成的设备上设置的兼容 ID。 可以使用此参数多次设置多个兼容 ID。

/wait [<timeout in MS>] - 等待用户提示或可选超时后立即删除设备。 以毫秒为单位指定的超时。

/unplug - 修改 /wait 参数以在不移除设备的情况下拔出设备。 设备将保留为非现有设备节点。 仅当使用 /wait 参数生成软件设备时有效。

/subtree - 删除整个设备子树,包括任何子设备。

/remove

删除由设备实例 ID 指定的设备。 只有使用 DevGen 创建的设备才能使用 DevGen 删除。

DEVGEN /remove <device instance ID> [/subtree]

标记:

/subtree - 删除整个设备子树,包括任何子设备。

软件设备与Root-Enumerated设备

默认情况下,DevGen 创建 软件设备。 软件设备是建议的测试设备,因为它们在重新启动后不会保留,也不会使系统混乱。 仅对需要系统重启的测试用例使用根枚举设备。

示例

有关示例,请参阅 DevGen 示例