飘云阁

用户名  找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 6589|回复: 11

[转贴] 几种典型程序Button处理代码的定位

[复制链接]

该用户从未签到

发表于 2007-9-20 16:15:25 | 显示全部楼层 |阅读模式
标 题: 几种典型程序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入口下条件断点: [esp+8]==xxxxxxxx && [esp+0c]==202;
4 F9继续程序,点击目标按钮,程序中断;
5 Alt+F4,在代码段(.text)上下访问断点;
6 F9执行程序,程序中断,
   1). VB程序中断在下面代码
     PUSH DWORD PTR DS:[EAX+EBX]              ; yyyyyyy
     上面[EAX+EBX]的值(yyyyyy)就是我们要找的位置。

   2). Delphi, CBuilder 的程序
     程序直接断在我们要找的位置。

借moon一句,这姑妄称作CallWindowProcA条件断点加上code段内存断点法吧。

二、VC程序
又分MFC和Win32两种情况,二者相同之处:
3 在IsDialogMessageW入口下条件断点: [[esp+8]]==xxxxxxxx && [[esp+8]+4]==202
4 F9继续程序,点击目标按钮,程序中断;
5 Alt+F4,在代码段上下访问断点;
6 F9执行程序,程序中断, 注意这里虽然中断在code段,但却不是处理Button点击事件的代码处
  这时:
  对Win32程序,只需要按几下F7,当回到User32.dll领空后再重复一次第 5、6步就可以了;
  而对于MFC程序,我们不得不多次重复这样的操作:单步回到MFC领空,再第 5、6步。好在已经看到大陆啦!

类比,这就叫IsDialogMessageW条件断点加上code段内存断点法了。

敬请各位指正。
PYG19周年生日快乐!

该用户从未签到

发表于 2007-9-21 20:43:45 | 显示全部楼层
学习了,不过还想知道为什么这样设!o(∩_∩)o...贪心!
PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2025-1-11 00:06
  • 签到天数: 969 天

    [LV.10]以坛为家III

    发表于 2007-9-22 08:41:36 | 显示全部楼层
    Nisy能发个这方面的视频教程吗?/:good
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-22 15:18:07 | 显示全部楼层

    回复 1# 的帖子

    高手呀。我们就想找这种的
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2023-12-12 23:31
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2007-9-23 16:53:39 | 显示全部楼层
    VB Explorer对付VB很好用
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-9-26 09:02:39 | 显示全部楼层
    赞啊
    吸收前人经验
    少走好多路/:014
    PYG19周年生日快乐!
  • TA的每日心情
    慵懒
    2019-12-8 22:56
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2007-9-27 22:37:03 | 显示全部楼层
    不错,支持一下!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2023-9-3 23:05
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    发表于 2008-2-20 13:02:46 | 显示全部楼层
    大哥,CallWindowProcA入口是哪里啊?怎么找到的?
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-20 21:21:43 | 显示全部楼层
    这个好像不是初学者所能掌握的
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2022-8-10 19:15
  • 签到天数: 33 天

    [LV.5]常住居民I

    发表于 2008-2-20 21:26:58 | 显示全部楼层
    现在我知道我有多菜了,好多东东都不懂啊,向NISY大哥学习了啊
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表