拦截对话框中的按钮消息

小弟想拦截对话框中的按钮消息,就是对话框中的BUTTON按下时的消息 ,很多对话框包括WINDOWS自己的对话框,这个消息比较好过滤,我只要安装 WH_CALLWNDPROC 钩子,在WM_COMMADN 消息中,加入以下过滤条件 :
CWPSTRUCT* pCwp = (CWPSTRUCT*)lParam;
(HIWORD(pCwp->wParam) == 0 )&& ((HWND) (pCwp->lParam )!= NULL)
基本可以准确捕获到对话框的按钮消息。

但我也发现许多对话框,用上面的方法是捕获不到的。也许当按下按钮时会发出 WM_COMMAND消息,但我的程序是没有办法过滤到这个消息,因为WM_COMMAND消息实在是太多了,我怎么知道哪一个是按按钮产生的呢?所以用WM_COMMAND消息似乎不行,不知道其他消息行不行,我的目的是拦截用户在对话框中进行的操作,比如按下按钮,或者勾选了单选框等等,我不关心用户进行了什么操作,但我一定要拦截这个消息。 用其他类型的钩子会不会容易实现?

WH_MSGFILTER钩子似乎可以捕捉到按钮本身的消息?小弟没用过这种钩子,请熟悉的大哥们给个建议。谢谢,分不够再加。分不是问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值