I'm building an application which needs to filter some mouse clicks system-wide. That is, I need to make the system ignore some mouse button clicks at special occasions.
I use low level mouse hook and SetWindowsHookEx
to filter out these clicks. It works relatively well, except for WPF
applications. I guess that's because these applications use DirectX
and DirectInput
for input processing, and that's why I can't filter out clicks in these applications, since they get the input directly from the driver.
Is there any way how to filter clicks in WPF
/DirectX
applications?
I know it is generally not good idea to globally filter clicks, but it is crucial for my application, and I will make sure that it is not filtered in games and other programs. But WPF
applications have ordinary GUI
, so I need to filter clicks in them as well.
Update
I guess I could solve this problem by writing my own filtering driver, but since I don't have any experience in writing drivers, please let me know if there is any other solution.