这里是我的情况:我们正在编写一个应用程序,必须将Microsoft Kinect坐标转换为键盘和鼠标事件.
当我们需要控制鼠标时,一切都按照我们在任何类型的应用程序进行工作.当我们需要向不处理Windows事件的应用程序(例如游戏)发送键盘事件(如键盘或键盘)时出现问题.
我们尝试了.net框架的SendKeys类,它只适用于Windows应用程序.当应用程序是像Half-Life或Doom这样的游戏时,我们无法获得相同的效果.所以,这是我的问题:我们如何有效地将键盘事件发送到这些其他应用程序?
您需要使用
SendInput模拟输入.SendMessage和SendKeys倾向于在Windows消息级别工作 – 但是DirectX应用程序不会运行传统的消息循环.
原文链接:https://www.f2er.com/windows/370127.html有一个页面在PInvoke.NET,但我必须承认,我没有尝试使用它.
另请参阅GameDev.net网站上的this thread,其中有人使用了一些可能遇到的具体与基于DirectInput的应用程序交互的“出牙”问题.