模拟按住键盘上的键?

时间:2011-06-22 20:21:59

标签: c# keyboard emulation

我知道SendKeys可以模拟打字并发送单独的击键,但我正在寻找一种模拟按住键的方法。我的目标是一个应用程序,作为窗口游戏的游戏手柄。想象一下,拿着一台平板电脑,屏幕两侧都有箭头键和基本按钮,然后按下它们模拟游戏接收的键盘按键。这是我的目标。

当手指按下按钮时,我想将其翻译为按下键盘键。释放该按钮后,我想释放该键。我知道这可能需要一些低级代码,我很好。

注意:我不想在我自己的应用程序中模拟这些事件,但是系统范围内。我正在为我的XNA游戏写这个,它不是在听直接的,关注重点事件,它正在检查键盘的状态,(正如我假设大多数游戏所做的那样)并对此作出回应。我希望我的应用程序能够欺骗我的游戏,以便在正确的时间按下键。

1 个答案:

答案 0 :(得分:1)

如果要在系统范围内模拟它,可以使用Core.dll中的SendInput。有关如何执行此操作的详细信息here

然而,你真的需要它,这是非常罕见的。相反,您应该尝试仅使用自己的应用程序进行操作(看起来更像是在这种情况下您需要的)。你可以简单地为你想要读取的所有键创建变量,然后从键盘和平板电脑中读取这些变量。

修改 哦,this link可能会更好......