devcon hwids 输出包含哪些持久信息?

devcon hwids 输出包含哪些持久信息?

我有一个游戏键盘(Logitech G15),它使用自己的软件来实现附加功能。现在我正在编写一个启动批处理脚本,如果键盘已连接,它会启动该软件。它当然可以自动启动,但我禁用了它,因为我不需要在不使用键盘时启动它。

我知道如何检查输出是否devcon hwids *包含一些精确的文本。这样我就可以找到设备。但我的问题是,输出中是否有任何信息在重新启动和使用不同键盘时保持不变。

我将 DevCon 的输出保存到两个文件中,一个连接键盘,一个不连接键盘。然后我将它们与进行了fc比较。这是其中一个区别:

HID\VID_046D&PID_C221&MI_00\8&29AF1682&0&0000
    Name: HID Keyboard Device
    Hardware ID's:
        HID\VID_046D&PID_C221&REV_0170&MI_00
        HID\VID_046D&PID_C221&MI_00
        HID_DEVICE_SYSTEM_KEYBOARD
        HID_DEVICE_UP:0001_U:0006
        HID_DEVICE

还有大约十个不同之处,其中设备是“HID 兼容设备”、“USB 输入设备”以及一些不相关的设备,例如集成 USB 集线器。

现在我想问的是,是否有任何信息可以识别另一个 Logitech G15,或者至少总是可以识别我的?

答案1

即插即用很难,是吗?我很同情你。

这些信息是存在的,并且就在您面前。标准硬件 ID 包含供应商 ID 和产品 ID。对于您来说:

危险品\视频_046D&PID_C221&REV_0170&MI_00

供应商 ID046D是 Logitech Incorporated,产品 IDC221是 G11/G15 键盘。(为了比较,产品 IDC223是带 USB 集线器的 G11/G15 键盘。)供应商 ID 只是 USB-IF 分配的供应商 ID。产品 ID 当然由 Logitech 决定。

理论上你可以限制你的设备控制台搜索:

devcon hwids“VID_046D&PID_C221

进一步阅读

相关内容