如何让正在忙时的程序响应钩子
键盘钩子--
挂钩:g_hHookKbd = SetWindowsHookEx(WH_KEYBOARD,MyKbdHook,nullptr, GetCurrentThreadId());
钩子函数:LRESULT CALLBACK MyKbdHook(int code,WPARAM wp,LPARAM lp)
{
if(wp==VK_F2)
{
...
}
return CallNextHookEx(g_hHookKbd,code,wp,lp);
}
一般情况下,上述代码正确执行,但当程序正在执行一项耗时的操作时,钩子就不起作用了!不是说钩子是将属于程序窗口的消息提前接收了吗,这不跟程序忙闲与否没有关系吗?为何程序在忙时钩子就收不到消息了呢?
那如何才能实现程序忙时也能让钩子起作用呢?