多个原始输入缓冲区

时间:2011-07-08 17:32:53

标签: c winapi

有没有办法让每个设备有一个原始输入缓冲区?

所以我想要一个鼠标缓冲区和另一个键盘缓冲区。 有可能吗?

2 个答案:

答案 0 :(得分:1)

是的,请尝试SetWindowsHookEx。但是,您必须自己将WM_KEY *消息转换为WM_CHAR。

答案 1 :(得分:1)

您的问题的答案是肯定的

RAWINPUTDEVICE结构允许通过usUsagePage和usUsage

来实现

usUsagePage是设备类型的值(这是下面的部分列表)。 1用于“通用桌面控件”并涵盖所有常用输入设备。 usUsage值指定“通用桌面控件”组中的设备。

1 - generic desktop controls // we use this
2 - simulation controls
3 - vr
4 - sport
5 - game
6 - generic device
7 - keyboard
8 - LEDs
9 - button
当usUsagePage为1时,

usUsage值:

0 - undefined
1 - pointer
2 - mouse
3 - reserved
4 - joystick
5 - game pad
6 - keyboard // we use this
7 - keypad
8 - multi-axis controller
9 - Tablet PC controls

我在Code Project上写了this article,可能会有所帮助。