2012-02-02 52 views
0

Google给出了this,但它似乎只适用于WindowsForms类。我对C#完全陌生。我试图做的是一个监视事件的程序,然后(例如),就像'H'键已被按下一样。我真的不想担心活动窗口是什么或者是什么,或者是向应用程序发送按键,我只想让程序按照我身体上按下键盘上的'H'按钮的方式进行操作。 SendKeys类似乎不适用于一般类。我是否完全错误地进行了这个?如何模拟C#中的击键?

+1

C#本身无法处理此问题。你需要得到比这更低的水平。您可以使用pinvoke来调用必要的键盘挂钩。这是一个例子(我放弃了,恐怕,但接收键盘事件的功能已经存在) - https://github.com/eberle1080/Kaptivate – 2012-02-02 01:50:35

+1

http://blogs.msdn.com/b/toub/ archive/2006/05/03/589423.aspx – 2012-02-02 01:54:18

+0

[This question](http://stackoverflow.com/questions/1645815/how-can-i-programmatically-generate-keypress-events-in-c)包含回答引用几乎所有我知道的变化。 – 2012-02-02 02:02:16

回答

0

How to: Simulate Mouse and Keyboard Events in Code

的Windows Forms提供了编程模拟鼠标和键盘输入几个选项​​。

模拟鼠标输入
模拟鼠标事件的最好方法是调用OnEventName方法提出要模拟鼠标事件。

模拟键盘输入
虽然可以通过使用上述鼠标输入讨论的战略模拟键盘输入,Windows窗体还提供了SendKeys类发送击键到活动的应用程序。