SetWindowsHookEx确定何时停用窗口

时间:2019-07-10 10:33:16

标签: windows winapi hook setwindowshookex

我有一个全局WH_CBT 32位钩子,用于确定何时使用HCBT_ACTIVATE激活窗口。

如何确定何时要停用该窗口? 有CBTACTIVATESTRUCT,其中有hWndActive,但有时是0x0,当切换到64位窗口时,它将无法工作。

没有HCBT_DEACTIVATE

1 个答案:

答案 0 :(得分:4)

如@Remy Lebeau所述,您可以使用class State def self.xyz ap 'inside' end self.singleton_class.send(:alias_method, :abc, :xyz) end 消息。激活或禁用窗口时均发送此消息。 设置一个>> State.xyz >> State.abc 钩子以捕获已停用的消息,它将在系统将它们发送到目标窗口过程之前获取这些消息。 有关更多详细信息:

将DLL中的函数用于非本地挂钩:

WM_ACTIVATE

这是DLL的代码:

WH_CALLWNDPROC