最初,我想使用2只小鼠进行具有单独指针和2只小鼠之间相互作用的应用(例如,选择矩形区域).后来我可能想在Windows中一般提供第二个指针.我认为通过使用第二只鼠标模拟手写笔可能是可能的.
我的主要问题是:我是否正确使用系统挂钩而不是RawInput,DirectInput或InputX?
如果使用系统挂钩我假设我需要使用WH_MOUSE_LL而不是WH_MOUSE,即使应用程序在一个线程上运行?我的首选语言是C#,但我再次假设使用DLL导入意味着我可以在C++或C中做任何可能的事情.
在 WINDOWS 中使用系统钩子是可行的方法。您可以将 C# 与 InteropServices 和适当的 COM+ 对象结合使用,但创建 C++ 类并包装它是更好的方法。我自己用键盘事件完成了这一点。我可以记录所有键盘输入...是的,你必须使用 WH_MOUSE_LL。