我想知道如何制作“设备实例 ID”或如何解析它。
以下面的字符串为例:
USB\VID_093A&PID_2700&MI_00\6&2703A67B&0&0000
据我所知:
USB
告诉这是一个 USB 设备VID_093A
表示其供应商 ID- 同样,
PID_2700
是产品 ID
但是,我不知道其余的。
我想知道如何制作“设备实例 ID”或如何解析它。
以下面的字符串为例:
USB\VID_093A&PID_2700&MI_00\6&2703A67B&0&0000
据我所知:
USB
告诉这是一个 USB 设备VID_093A
表示其供应商 IDPID_2700
是产品 ID但是,我不知道其余的。
好吧,你真的不能。这是微软对此的回应。
设备实例 ID 应被视为不透明。如果您想要 VID/PID,请查询硬件和/或 compa ID 并解析它们。硬件 ID 不被认为是不透明的(但您仍然必须假设会出现新的硬件 ID,因此您需要检测要解析的模式并拥有处理其他类型格式的主动代码)。
Microsoft 设备实例 ID页面很好地解释了设备实例 ID 字符串是如何组成的。
本页说明如何创建 USB 标识符字符串(构成设备实例 ID 的设备 ID 部分)。
具体来说,对于您的示例:
USB\VID_093A&PID_2700&MI_00
是设备 ID,并且6&2703A67B&0&0000
是实例 ID此外,设备 ID 告诉您:
USB\
:这是USB枚举器下的设备VID_093A
: Pixart, Inc. 制造了此 USB 设备(您可以在此处找到 USB 供应商 ID 列表)PID_2700
:这是产品编号MI_00
:这是一个多接口 USB 设备