注释
不允许重新分发此工具,不应用于生产方案。
从 Windows 11 版本 22H2 开始,可以在 WDK 的工具文件夹中找到 DevGen.exe。 它允许管理员创建和删除 软件设备和 根枚举设备以进行测试。
若要运行 DevGen,请打开命令提示符窗口(以管理员身份运行)、导航到工具文件夹,并使用以下语法和参数键入命令。
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 示例。