吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7883|回复: 8
收起左侧

[分享] 浅谈Delphi程序的汉化

  [复制链接]
Hmily 发表于 2009-7-15 10:34
标 题: 【原创】浅谈Delphi程序的汉化
作 者: daokers
时 间: 2009-06-23,23:27
链 接: http://bbs.pediy.com/showthread.php?t=92143

英文程序的汉化是一个枯燥、幸苦的体力活,但是我深深的喜欢上了这个过程,虽纯粹是爱好,但是一直自得其乐,沉醉其中,体会那别样的酸甜苦辣。
     成功汉化一个程序的前提是确保目标软件没有加密,所以首先是检查软件是否被加密。我已刚刚汉化的一个程序HFS为例子来说一下程序汉化的大概过程。
    首先用DIE或者peid查壳

程序被UPX 2.0压缩,可用peid的通用脱壳机插件脱壳之,用UPX的解压工具脱壳体积小些。
脱壳后软件运行界面

脱壳后就可以直接对资源进行编辑了,对于delphi程序我建议使用Multilizer来汉化标准资源,其读取RC数据的功能十分强大。

最后记得保存或者导出项目文件,下次更新时就不用逐个翻译了,直接使用就可以自动翻译。
现在软件的界面

可以看到已经汉化了很大部分了,怎么还显示有英文呢,哈哈,现在就到了非标准资源汉化了。这里推荐大家使用Athena-A来搞定非标准资源,这个软件的功能叶非常强大,支持字典,这点比狂风汉化百宝箱好多了。打开Athena-A,新建项目,选择ASCII。

这个软件的字典提取,编辑,自动翻译等等功能都设计的非常巧妙、灵活,俺很喜欢,用活了这个软件可以省很多功夫。

经过这一步汉化后,看看现在的软件界面

或许您已发现还有一个地方没有被汉化,那就是“Log”这里,他的意思是”日志“,”日志“为四个字节,而“Log”有3个字节,很明显汉化所需位置不够,所以Athena-A无法替换,在这里怎么办呢? 我们采用修改Log的RVA来解决。
    打开16进制编辑软件,比如UltraEdit,将上面汉化的软件拖入UltraEdit。点击查找"虚拟文件系统",来到“Log”附近。

查看这段代码,可以发现这样一个特点,我们可以拿“虚拟文件系统”和“Log”2个字符的16进制代码来比较,字串之间以00间隔,而且只能以一个00间隔,D0 E9 C4 CE C4 BC FE CF B5 CD B3是虚拟文件系统的十六进制代码,在它的前一个字符间断符00后的代码是FF FF FF FF 0C 00 00 00 00,而在Log的前一个间断符号后的代码是FF FF FF FF 03 00 00 00,和上面的非常相像,并且仔细看看,03不正是Log的长度吗,0C不正是“虚拟文件系统”的12字节长度吗?同时可以发现,在“虚拟文件系统”和“Log”之间除了间断符外有很多剩余的空间,既然有这个特点,那么我们将“Log”前的FF FF FF FF 03 00 00 00代码前移,为后面的汉化腾出空间,并且输入“日志”,现在成了这样

代码前移时切记一定要留下一个00做字符间隔符号,“日志”为4的字节03改为04,输入“日志”确保后面有00间隔符。现在是不是就行了呢?还没有呢,还需要修改调用这个字符的RVA。我们先查看调用"LOG“的RVA是多少,鼠标停在”L“处,在下面状态栏显示字串的实偏移。

打开点睛偏移量转换器,可求出调用RVA

RVA=C0EB5200

同样的办法求出”日“第一个字节的RVA,RVA=BADF5200
现在就搜索十六进制的C0EB5200,修改为BADF5200就ok了

原来就在上面不远,修改后现在另存为,
现在的软件界面

咦,LOG已被成功汉化,

至此,这个软件就被完全汉化了,希望能抛砖引玉,^_^。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wgz001 发表于 2009-7-15 10:41
学习汉化   很吃力   
iy0507 发表于 2009-7-15 10:51
smallyou93 发表于 2009-7-15 11:14
mxc123 发表于 2009-7-15 12:26
我也收藏了
davidmtk 发表于 2009-7-15 22:29
Hmily 老大的东西!我喜欢,向Hmily 老大看齐!俺也慢慢学习汉化!
影子情人 发表于 2009-7-16 10:32
先收藏了,有空学习一下。。。。
寒湖鹤影 发表于 2009-7-16 15:28
好详细呀,学习了
lyliucn 发表于 2009-7-19 09:55
这个方法太好了。正需要。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 01:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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