如何拦截其它进程的消息?
我用HOOK WH_CALLWNDPROC可以WM_DESTROY这个消息,
但是无法拦截,LRESULT CALLBACK CallWndProc(
int nCode, // hook code
WPARAM wParam, // current-process flag
LPARAM lParam // address of structure with message data
)
{
CWPSTRUCT *pCwp = NULL;
if (nCode < 0)
{
return CallNextHookEx(h1Hook, nCode, wParam, lParam);
}
if (NULL != lParam)
{
pCwp = (CWPSTRUCT *)lParam;
if (pCwp->message==WM_DESTROY)
{
pCwp->message=0;
return 1;
}
if(pCwp->message==WM_NCDESTROY)
{
pCwp->message=0;
return 1;
}
}
return CallNextHookEx(h1Hook, nCode, wParam, lParam);
}直接return 1了 但是目标窗口还是接收到WM_DESTROY消息!
有啥方法屏蔽掉这个消息?
我用HOOK WH_CALLWNDPROC可以WM_DESTROY这个消息,
但是无法拦截,LRESULT CALLBACK CallWndProc(
int nCode, // hook code
WPARAM wParam, // current-process flag
LPARAM lParam // address of structure with message data
)
{
CWPSTRUCT *pCwp = NULL;
if (nCode < 0)
{
return CallNextHookEx(h1Hook, nCode, wParam, lParam);
}
if (NULL != lParam)
{
pCwp = (CWPSTRUCT *)lParam;
if (pCwp->message==WM_DESTROY)
{
pCwp->message=0;
return 1;
}
if(pCwp->message==WM_NCDESTROY)
{
pCwp->message=0;
return 1;
}
}
return CallNextHookEx(h1Hook, nCode, wParam, lParam);
}直接return 1了 但是目标窗口还是接收到WM_DESTROY消息!
有啥方法屏蔽掉这个消息?
发现WM_DESTROY就设成0