这几天在写HID设备相关的东西.
也许是我笨吧,反正查找了半天的资料,都是介绍怎么打开设备,怎么获取设备路径,但就是没有如何获取设备名的方法.
没其他办法,不管什么手段,目的是要达到的.于是找到了WMI,这家伙确实强大,能获取到的信息也特别多.
这样就需要建立一个关系连接,然后只要在相关的数据中搜索就可以了.
SELECT Caption from Win32_PNPEntity where PNPDeviceID = DevID
其中DevID为枚举HID设备过程中获取到的HID设备路径的字符串重组.
在设备描述中,是不包含设备GUID的,而设备路径本身却有这个GUID,所以需要重组.
最后获得的字符串是形如
"hid//vid_1a81&pid_1002&mi_01&col02//7&20884bd1&0&0001"
的东西.
还需要注意一点 : 如果直接用WMI搜索后,得到的PNPDeviceID 是
hid/vid_1a81&pid_1002&mi_01&col02/7&20884bd1&0&0001
但查询时,一定要用"//".