views:

255

answers:

1

In my Windows application, while registering for 'Raw Input Devices', I wish to register only mouse but the trackpad which is also a pointing device also gets registered.

In MSDN Documentation, Top Level Collection (TLC), says usage of, usUsagePage, usUsage fields of RAWINPUTDEVICE. But there is no information how to exclude one of the devices under the same category. RIDEV_REMOVE, RIDEV_EXCLUDE or any other mode flags doesn't provide the answer and they can only be used for a sub-class depending on usUsagePage value.

Controlling of the particular device of a class is possible once registering and later obtaining 'hDevice' member value of RawInputHeader, but I wish not to register the touchpad in the first place.

Let me know if there is any other option for the above problem.

Thanks in advance

KB

A: 

In short, it sounds like the mouse driver in the case of USB, is a HID device, unfortunately, sub-classes of the mouse driver could get registered also as you have found out, have you tried changing the mouse driver to some generic or perhaps disable the trackpad? Perhaps, kill the trackpad program that runs in the tray? But then again you mentioned trackpad which I suspect is the laptop in which you are running the driver off on, have you tried it on a desktop pc with a standalone usb mouse?

Hope this helps, Best regards, Tom.

tommieb75
Hi Tom,Thanks!But, as I said it works fine with PC. Its not only concerned with touchpad, any other pointing device using mouse class, for example I am using tablet screen, that too gets registered. I can have conditional statements and ignore the data coming from any other pointing device except which I opt for. I am ok, if there is options like:1) I wish the other devices raw data should be handled in a default way instead of my application interfaring. I am using WM_INPUT message.2) Registering only the device which I need data.Do you have any other suggestion ?KB
K Babu