【问题标题】:Low Level keyboard hook c++低级键盘挂钩 C++
【发布时间】:2015-06-26 10:23:03
【问题描述】:

我尝试在 C++ 中创建一个设置低级键盘挂钩的应用程序 并且每次用户按下一个键时,它都会写一个我制作的字符串的字符。

谁能解释我如何在不使用 keybd_event 函数,但在操作系统解释之前更改密钥本身。

我尝试使用 ths MSG 并更改 wparam,但没有成功。 如果有人可以给我看一个代码示例,它将 变得更好

【问题讨论】:

  • 你见过this吗?
  • 是的,我学会了如何安装钩子,我阅读了 MSDN 中关于 setwindowshookex、wh_keybored_LL、keybd_event 和 MSG 的所有内容,但在任何地方都没有得到我的答案

标签: c++ winapi keyboard-hook


【解决方案1】:

谁能解释我如何在不使用 keybd_event 函数的情况下更改用户输入,但在操作系统解释之前更改密钥本身。

你不能。您必须拒绝钩子中的密钥,然后使用keybd_event()SendInput() 发布您自己的密钥。并确保检查KBDLLHOOKSTRUCT::flags 字段是否启用了LLKHF_INJECTEDLLKHF_LOWER_IL_INJECTED 标志,这样您就不会拒绝自己的模拟密钥。

我尝试使用 ths MSG 并更改 wparam,但没有成功

MSG 结构不与 WH_KEYBOARD_LL 挂钩使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多