【问题标题】:How do i send keys using a global keyboard hook?如何使用全局键盘挂钩发送键?
【发布时间】:2011-08-07 07:04:00
【问题描述】:

我正在尝试将密钥发送到不响应我迄今为止使用的任何 API(SendInput()、PostMessage()、SendMessage() 等)的应用程序。但是,我测试了 Windows 的屏幕键盘实用程序并按下了我需要的键,应用程序很容易收到这些键。

如果我理解正确,键盘实用程序使用全局键盘钩子来发送键,所以我对我如何能做到这一点也很感兴趣。我尝试在 google 上找到如何做到这一点的示例,但没有找到任何结果。

谢谢。

【问题讨论】:

    标签: c++ windows keyboard hook inject


    【解决方案1】:

    Hooks 用于拦截事件,而不是发送新事件。所以你问的是钩子是不可能的。 SendInput 是要走的路。可能你做错了什么,所以如果你发布你的代码不起作用并调试出了什么问题会更好。

    【讨论】:

      【解决方案2】:

      我解决了。我正在向 DirectX 应用程序发送密钥。结果我不得不发送 DirectX 扫描码而不是常规的 VK_KEY。

      扫描码列表见:http://www.gamespp.com/directx/directInputKeyboardScanCodes.html

      将这些与 SendInput() 一起使用,一切正常。

      也感谢您的帮助。

      干杯。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-23
        相关资源
        最近更新 更多