标题说明了一切。在父窗口处理后,如何让我的键盘钩子处理传入的键盘消息?阅读docs我发现有一个名为WH_CALLWNDPROCRET
的值正是这样做的,但是我需要在那里指定WH_KEYBOARD
(当然要使它成为键盘钩子),并且值不是& #39; t似乎有点旗帜,所以我无法将两者结合起来。
背景:我正在为Word 2013编写一个加载项,它需要监视某些键并仅采取适当的操作 Word完成处理后的那些键。我正在使用globalmousekeyhook项目进行挂钩。
答案 0 :(得分:0)
您所指的库正在订阅以下四个钩子:
当你订阅一个钩子时,你给系统一个回调你的代码,这将根据钩子类型到钩子类型的规则执行。此外,回调将为您提供的信息必须以不同的方式进行解释。这4个提供有关鼠标位置,击键等的信息。
您可以订阅许多不同类型的挂钩。请参阅:Hook Overview
WH_CALLWNDPROCRET
哟指的是其中之一。它具有不同的回调调用行为,并为您提供发送到窗口的所有消息。这些可能包括理论上数百种可能的消息,不仅包括键盘和鼠标消息。
为了回答你的问题,图书馆globalmousekeyhook
不能订阅除上述4之外的其他任何钩子。
好消息是,你可以重用库中的代码来实现自己的订阅。
WM_KEYDOWN, WM_KEYUP, WM_SYSKEYDOWN, WM_SYSKEYUP
。<强>结论强> 不,图书馆无法满足您的需求。 是的,您可以通过重用该库中的代码来实现这一目标。