4

我在哪里可以获得 HID 设备的结构?

例如:

 raw data from a device, using GetRawInputData:
 (  0 137 117  0 146 130 24 128  0  )
 (  0 137 117  0 146 130  8 128  0  )
                          /\
 at this I can see that  ||  there is being a button released
 that means, at the 6-th char at 4-th bit

通过分析原始流,我可以找出按钮、开关和模拟数据在哪里。有没有办法从 Windows 询问这些信息。

我的主要目标是基本上得到结构:

Button - 6th char, 4th bit.
Analog - 2nd char
Switch - 6th char, 0-3th bit.

我找到的唯一解决方案是HID Descriptors. 但我不确定如何使用它们。阅读文档后,我感觉就像撞到了一堵砖墙。是否有一个很好的例子如何使用它们或更好地描述它们的书。(或者没有描述符的更简单的方法)


我发现HidP_GetButtonsHidP_GetUsages仍然不知道如何提取结构(如上所述)。

4

2 回答 2

0

问题似乎是每个设备都有自己的结构。似乎没有通用的方式通过win32 api来获得结构的解释。

的组合

似乎可以从win32获得所有信息。

之后,您可能需要一些外部信息源(或由您生成),描述特定字段等。

于 2010-02-21T02:55:40.537 回答
0

哦,你必须使用GetRawInputData。msdn上有一个有点糟糕的例子。

于 2010-02-14T16:22:20.430 回答