主题:关于全局鼠标钩WH_MOUSE_LL的标题栏点击消息(WM_NCLBUTTONDOWN)的问题
程序运行没有任何问题,除了非客户区域的消息,其他的都能捕捉到,WM_LBUTTONDOWN也可以在其他窗口的标题栏上捕捉到。
但现在我想判断鼠标是否在标题栏上点击而不是随意的点击(当然也包括其他窗口),怎么都捕捉不到WM_NCLBUTTONDOWN消息。MSDN上说这个消息会被所在窗口的进程所捕获,没看明白怎么回事。望指点一下。
MouseHookProcedure = new HookProc(MouseHookProc);
IntPtr pInstance = Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().ManifestModule);
hMouseHook = SetWindowsHookEx(WH_MOUSE_LL, (HookProc)MouseHookProcedure, pInstance, 0);
if (hMouseHook == 0)
{
MessageBox.Show("SetWindowsHookEx(Mouse) Failed");
return;
}
这里有个别人的帖子,里面的问题和我一样,虽然问题解决了却没有答案,郁闷死。
http://topic.csdn.net/t/20010722/15/204237.html#r_1299772
但现在我想判断鼠标是否在标题栏上点击而不是随意的点击(当然也包括其他窗口),怎么都捕捉不到WM_NCLBUTTONDOWN消息。MSDN上说这个消息会被所在窗口的进程所捕获,没看明白怎么回事。望指点一下。
MouseHookProcedure = new HookProc(MouseHookProc);
IntPtr pInstance = Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().ManifestModule);
hMouseHook = SetWindowsHookEx(WH_MOUSE_LL, (HookProc)MouseHookProcedure, pInstance, 0);
if (hMouseHook == 0)
{
MessageBox.Show("SetWindowsHookEx(Mouse) Failed");
return;
}
这里有个别人的帖子,里面的问题和我一样,虽然问题解决了却没有答案,郁闷死。
http://topic.csdn.net/t/20010722/15/204237.html#r_1299772