几种典型程序Button处理代码的定位
标 题: 几种典型程序Button处理代码的定位作 者: jingulong
时 间: 2006-01-04,15:33
链 接: http://bbs.pediy.com/showthread.php?t=20078
首先
1 od 下运行程序,F12 暂停;
2 View菜单中选击Windows项,在打开的窗口中可以从Title栏看到目标按钮,从而找到它的Handle(xxxxxxxx) ;
对不同平台生成的程序,分别处理:
一、VB, Delphi, CBuilder 程序:
3 在CallWindowProcA入口下条件断点: ==xxxxxxxx && ==202;
4 F9继续程序,点击目标按钮,程序中断;
5 Alt+F4,在代码段(.text)上下访问断点;
6 F9执行程序,程序中断,
1). VB程序中断在下面代码
PUSH DWORD PTR DS: ; yyyyyyy
上面的值(yyyyyy)就是我们要找的位置。
2). Delphi, CBuilder 的程序
程序直接断在我们要找的位置。
借moon一句,这姑妄称作CallWindowProcA条件断点加上code段内存断点法吧。
二、VC程序
又分MFC和Win32两种情况,二者相同之处:
3 在IsDialogMessageW入口下条件断点: []==xxxxxxxx && [+4]==202
4 F9继续程序,点击目标按钮,程序中断;
5 Alt+F4,在代码段上下访问断点;
6 F9执行程序,程序中断, 注意这里虽然中断在code段,但却不是处理Button点击事件的代码处
这时:
对Win32程序,只需要按几下F7,当回到User32.dll领空后再重复一次第 5、6步就可以了;
而对于MFC程序,我们不得不多次重复这样的操作:单步回到MFC领空,再第 5、6步。好在已经看到大陆啦!
类比,这就叫IsDialogMessageW条件断点加上code段内存断点法了。
敬请各位指正。 学习了,不过还想知道为什么这样设!o(∩_∩)o...贪心! Nisy能发个这方面的视频教程吗?/:good
回复 1# 的帖子
高手呀。我们就想找这种的 VB Explorer对付VB很好用 赞啊吸收前人经验
少走好多路/:014 不错,支持一下! 大哥,CallWindowProcA入口是哪里啊?怎么找到的? 这个好像不是初学者所能掌握的 现在我知道我有多菜了,好多东东都不懂啊,向NISY大哥学习了啊
页:
[1]
2