Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows:从2个鼠标中分离输入_C#_Windows_Io - Fatal编程技术网

C# Windows:从2个鼠标中分离输入

C# Windows:从2个鼠标中分离输入,c#,windows,io,C#,Windows,Io,最初,我想使用两个鼠标作为一个应用程序,使用单独的指针和两个鼠标之间的交互(例如,选择一个矩形区域)。稍后,我可能想在windows中提供第二个指针。我认为用第二只鼠标模拟一支手写笔是可能的 我的主要问题是:我使用系统钩子而不是RawInput、DirectInput或InputX对吗 如果使用系统钩子,我想我需要使用WH_MOUSE_LL而不是WH_MOUSE,即使应用程序运行在一个线程上?我喜欢的语言是C语言,但我又假设使用DLL导入意味着我可以做任何可能的C++或C.< /P> < P>使

最初,我想使用两个鼠标作为一个应用程序,使用单独的指针和两个鼠标之间的交互(例如,选择一个矩形区域)。稍后,我可能想在windows中提供第二个指针。我认为用第二只鼠标模拟一支手写笔是可能的

我的主要问题是:我使用系统钩子而不是RawInput、DirectInput或InputX对吗


如果使用系统钩子,我想我需要使用WH_MOUSE_LL而不是WH_MOUSE,即使应用程序运行在一个线程上?我喜欢的语言是C语言,但我又假设使用DLL导入意味着我可以做任何可能的C++或C.< /P> < P>使用系统钩子是Windows的一种方式。您可以使用带有互操作和兼容的COM+对象的C语言,创建一个C++类并包装它将是一个更好的方法。我用键盘事件自己做过。我可以记录所有键盘的输入。。。是的,您必须使用鼠标。

使用microsoft multipoint sdk如何?我正在再看一眼。但是也有一些限制,比如没有扩展桌面,所以我想我更喜欢开发自己的界面。硬件方面,可以通过模拟一个带有一个模拟轴的操纵台(鼠标形式)来实现,该模拟轴表示每次更新的X/Y变化,有3/4个按钮用于单击。我使用了Multipoint SDK。这些限制也开始让我恼火了!如果你有时间的话,我建议你研究其他选择(并公布你的结果!)。如果我没记错的话,您应该能够通过RawInput接口完成所需的工作。我不认为系统挂钩是必要的。