一个鼠标钩子的问题
调用和回调函数写在下面,有两个问题
1.为什么只能捕获本窗口的消息?
2.为什么我调用了CallNextHookEx()其它程序还是没办法响应鼠标消息?
LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
PMOUSEHOOKSTRUCT pMhs = (PMOUSEHOOKSTRUCT)lParam;
char lpszPos[20];
sprintf(lpszPos, "x:%d , y:%d", pMhs->pt.x, pMhs->pt.y);
TextOut(g_hDC, 50, 20, lpszPos, strlen(lpszPos));
LRESULT rt = CallNextHookEx(g_hHook, nCode, wParam, lParam);
return 1;
}
int __stdcall StartHook(HWND hWnd)
{
g_hDC = GetDC(hWnd);
if(NULL == (g_hHook = SetWindowsHookEx(WH_MOUSE, MouseProc, g_hInst, 0)) )
{
return 0;
}
else
{
return 1;
}
}