一个关于鼠标钩子的问题
各位大侠,
我用SetWindowsHookEx(WH_MOUSE, (HOOKPROC)MouseProc, g_hInstance, 0);
启动了一个鼠标钩子,它的过程函数如下:
LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode < 0) // do not process the message
{
return CallNextHookEx(NULL, nCode, wParam, lParam);
}
if(wParam == WM_RBUTTONDOWN)
{
AfxMessageBox("RButton");
}
return CallNextHookEx(NULL, nCode, wParam, lParam);
}
第一次启动程序后,点击鼠标右键弹出RButton对话框,然后我点击退出按钮通过
UnhookWindowsHookEx(g_hHookMouse);去掉钩子然后退出程序。 当我再次执行程序
点击鼠标右键后就不弹RButton对话框了,请问这是什么原因。如何解决?