如何在应用程序外监控按键输入?

3

我需要一种在C#中监视系统范围内按键的方法,例如Ctrl+A,以便我可以对其进行操作。

即使在我的应用程序失去焦点时,我也能够获取这样的事件吗?


1
你想要做什么?是为了寻找电脑空闲时间还是记录按键日志呢? ;) - TheVillageIdiot
哎呀,我以为这是完全重复的问题,但另一个问题是Delphi,所以不一样,抱歉。 - Patrick McDonald
请查看此链接:.NET中的全局系统钩子 - Thomas Levesque
太棒了!解决了我的问题,因为它使用了全局钩子,即接收任何应用程序中执行的键盘和鼠标事件。 - Robin Rodricks
似乎比 Johannes Rossel 的解决方案更简单。感谢你们两个,给你们都加1。 - IsmailS
2个回答

4
您可以使用RegisterHotKey函数来响应全局热键。但是,我不建议您使用像Ctrl + A这样在许多应用程序中都有意义的组合键。

-1

我认为没有一种受控的方法可以做到这一点。在API级别上,您可以注册系统范围的钩子或全局热键。

写键盘记录器吗?:-)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接