VC中利用SetWindowsHookEx钩子函数阻止弹出窗口如何实现?

不知道我表达的是否清楚,就是,利用钩子监视某个窗口,当我点击窗口的确定按钮时会弹出错误提示框,我能在这个错误提示框显示之前,或得它的信息并且销毁它吗,也就是达到点击确定按... 不知道我表达的是否清楚,就是,利用钩子监视某个窗口,当我点击窗口的确定按钮时会弹出错误提示框,我能在这个错误提示框显示之前,或得它的信息并且销毁它吗,也就是达到点击确定按钮没有任何反应的效果,但是我确得到了错误提示框的信息,可以实现这样的效果吗,麻烦高人指点下! 展开
 我来答
龚炜林
2014-05-19 · TA获得超过1560个赞
知道大有可为答主
回答量:1102
采纳率:66%
帮助的人:572万
展开全部
你获取窗口HWND以后,用
GetWindowThreadProcessId
获取窗口所在进程与线程ID,再用
SetWindowsHookEx
Hook那个线程的WH_CALLWNDPROC消息,在那个线程对消息处理之前进入你定义的
LRESULT CALLBACK CallWndProc(
int nCode,
WPARAM wParam,
LPARAM lParam
);
lParam是一个指向

typedef struct {
LPARAM lParam;
WPARAM wParam;
UINT message;
HWND hwnd;
} CWPSTRUCT, *PCWPSTRUCT;

的指针
这样你分析lParam指向的结构体的值,就能分析得到是否是发给你要截获的那个按钮的单击消息了。
追问
有点不太明白,可以再说的详细一点吗,谢谢了
追答
如果你熟悉一点按钮控件的单击消息和
SetWindowsHookEx
那理解我说的应该没问题。
但是如果你是两个都不了解,我也不知道怎么详细了。
要不你先网上看看如何实现全局钩子以及SetWindowsHookEx可以安装哪些钩子。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式