【问题标题】:Capture All Keyboard Input捕获所有键盘输入
【发布时间】:2011-10-01 14:49:45
【问题描述】:

首先,我知道这可以用于键盘记录器。我不打算这样做,我正在寻找一个应用程序来监听自定义键组合,只是为了自动执行一些非常烦人的任务。

有什么方法可以捕捉键盘的所有输入吗?

【问题讨论】:

  • 如果你说的是真的,那么你不想听所有的组合键。你想听特定的。注册一个热键。
  • 你想要完成什么样的“烦人的任务”?诸如键盘宏之类的东西会解决您的问题,还是您想要执行应用程序的键盘快捷键?
  • David 有一点,如果你想捕获特定的输入,那么你可以创建一个带有输入处理程序的应用程序,只查找声明为此类任务的快捷方式的某些组合。
  • 你知道,Windows 已经内置了这个,它叫做hotkey。无需挂钩键盘输入。
  • @Ajay 我已经在 cmets 中说了些什么。提问前请通读。

标签: c++ windows


【解决方案1】:

你似乎在寻找RegisterHotKey()

我认为您不想挂钩所有键盘输入。你只需要一个带有隐藏窗口的应用程序来监听WM_HOTKEY。我认为你甚至不需要自己写。有很多实用程序可以为您执行此操作,并让您将系统范围的热键与您的规范操作相关联,例如AutoHotKey.

【讨论】:

    【解决方案2】:

    即使您的应用程序没有获得焦点,也可以捕获键盘输入,您需要使用windows hookWH_KEYBOARD 之一。它应该被实现为一个 DLL,以注入到所有进程中。示例here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-18
      • 1970-01-01
      • 1970-01-01
      • 2020-01-28
      相关资源
      最近更新 更多