读书人

Hook MessageBox 进阶 跨过程Hook

发布时间: 2013-11-02 19:41:10 作者: rapoo

Hook MessageBox 进阶 跨进程Hook

转载注明出处

http://blog.csdn.net/xugangjava/article/details/14001685

以前的文章(http://blog.csdn.net/xugangjava/article/details/7455851)中介绍了如何Hook 系统的MessageBox的函数不过只限于本进程,

本文主要介绍如何Hook其他进程的MessageBox函数。

这里我用SetWindowsHookEx 来实现,SetWindowsHookEx最后一个参数设置为0 ,表示拦截所有进程的相关消息。在回调函数中安装Hook就可以达到目的。

对原有代码稍作修改dllmain.cpp修改如下


按钮事件处理函数如下

好的再次调用MessageBox

Hook MessageBox 进阶  跨过程Hook

发现python 进程的MessageBox已经被我们替换掉了,因为这个是命令行程序,第一次调用弹出只是为了该进程进入我们的WH_GETMESSAGE 回调MessageHookProc。

对不同类型进程Hook的时候可以使用不同的参数 WH_CALLWNDPROCRET,WH_KEYBOARD_LL,WH_MOUSE_LL来进行Hook。

同理 卸载钩子

Hook MessageBox 进阶  跨过程Hook

有不对的地方欢迎大家指正。



读书人网 >编程

热点推荐