用OD给exe文件添加一个对话框初探.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用OD给exe文件添加一个对话框初探

用OD给exe文件添加一个对话框初探 【文章标题】: 用OD给exe文件添加一个对话框初探 【文章作者】: CxLrb 【作者邮箱】: cxlrb@ 【作者主页】: / 【作者qq号】:【软件名称】: Pe_optimizer1.4汉化版by.CxLrb 【下载地址】: 自己搜索下载 【使用工具】: OD,HexDecChar,XN Resource Editor 【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教! -------------------------------------------------------------------------------- 【详细过程】 也许你正想者diy一个可执行文件,给一个汉化好的文件加上自己的对话框,或者直接加上帮助文本,或者显示破解 组织信息。总之是为一个exe文件添加一个对话框,功能类似关于窗口。在此举一个例子供大家参考,实际没什么意义, 但仅仅是出于兴趣和技术探讨,给大家分享我的成功喜悦! 我们以Pe_optimizer1.4 (以下简称PO)这个小程序为例来学习: 1.预备知识----对话框响应原理: 当我们按下界面上的一个菜单或者一个按钮时,DialogBoxParamA会调用窗口回调函数来处理,即把包含菜单命令 的信息作为参数送给窗口回调函数,因为一般界面中菜单或按钮有多个,所以很明显会有下面的类型的代码: cmp ebx, xxxx1 比较按下的按钮ID是否等于xxxx1 jnz short xxxxxxxx1 如果不是,跳过继续判断,xxxxxxxx1为下一个比较的地址 call xxxxxxxx1 如果是,调用该按钮响应的操作 cmp ebx, xxxx2 jnz short xxxxxxxx2 call xxxxxxxx2 ..................... 或者 cmp eax,xxxx1 比较点击的菜单ID是否等于xxxx1 jz xxxxxxxx1 如果是,调用该按钮响应的操作 cmp eax,xxxx2 不是,继续判断 jz xxxxxxxx2 ................... 或者 cmp ax,xxxx1 比较点击的菜单ID是否等于xxxx1 jz xxxxxxxx1 如果是,调用该按钮响应的操作 cmp ax,xxxx2 不是,继续判断 jz xxxxxxxx2 ................... 也许还有其他形式,但总会类似以上列举的几种。 本文的例子就是第一种情况。 2. 添加资源按钮和对话框资源 我们用XN Resource Editor 3.0 来打开,然后在主界面对话框上添加一个按钮,ID改为505 (16进制1F9); 然后再添加一个对话框,将对话框的资源名(其实就是ID)称改为103 (16进制67),再在103对话框上添加 一个按钮,ID与关于对话框中关闭的ID (即505)相同即可。最后保存关闭。 运行程序看看,已经出现添加的按钮,但点击不会出现我们添加的对话框,因为还没有响应代码。 3. 添加响应代码。 我们用OD载入PO,右键-》查找-》所有模块间的调用,在最后几行我们看到两了DialogBoxParamA这个函数 找到的模块间的调用 地址 反汇编 目标 0040654E call jmp.GDI32.CreateFontA GDI32.CreateFontA call jmp.USER32.SendDlgItemMessageA USER32.SendDlgItemMessag

文档评论(0)

asd522513656 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档