正式会员享受无限制浏览网站功能和高速网盘下载,赶快加入本站吧!
您需要 登录 才可以下载或查看,没有账号?立即注册
x
作者:Raindy
网站:www.raindy.org
源地址:http://teach.hanzify.org/article/683-1258938559.html
非标简介』
汉化标准资源后,在软件界面或调用信息时显示,但又不出现在String、Rcdata 等标准资源中的字串多数属于非标资源,非标资源无法进行可视化汉化操作,需要专门工具提取后替换回写到程序中。
『CXA 简介』
CXA 是一款简单易用的字符串抓取替换工具,可以把英文程序中非标准资源的 ASCII 和 Unicode 字符迅速查找出来并经过翻译成可生成中文程序。
CXA 在功能上,不输于点睛字符器替换器(简称点睛), 点睛限于提取 PE 文件和文本文件,而CXA则不限 ,两者各有优缺点,通常点睛漏提的字串或无法提取的字串可以通过 CXA 弥补不足。
『学习任务』
汉化目标:使用 CXA 汉化示例软件的非标资源 (PS:标准资源已汉化)
『操作流程』
1.运行 CXA,设置 CXA 参数,CXA 默认使用 Windows 自带的记事本为编辑器,可以根据个人习惯设置编辑工具,其他建议使用默认参数:
2.通过“浏览”载入待汉化的程序,方式根据非标类型选择,本例软件为 VC++ 编写(非VB或Delphi),为ASCII字串,故“方式”标签处选择“ASCII(全部)”,“自动翻译”强烈建议不要使用,因为容易翻译不该翻译的内容导致非标汉化过度。步骤1设置完毕,“确定”跳转到到“步骤2”:
3.点击“编辑原始英文文本文件”打开 Webtool.exe.asc 文件(提取后未翻译),根据经验移除一些无用的字串,如图示的文件头等信息即可删除,完毕保存文件,“确定”转到“步骤4 ”:
4.编辑翻译文件 Webtool.exe.tra ,在CXA中以 三行显示,第一行为行数标记,第二行为原始字串, 第三行为待翻译字串 ,我们要做的就是翻译第三行的字串,注意字串翻译后的长度不要超过原始长度!
5.完整编辑翻译文件后,保存,返回步骤4,进行替换操作,选择填补方式后“确定”。
注意在 CXA 中填补方式使用0x20填充,即以空格填补翻译后字串小于原始长度留下的空位置,而不推荐使用0x00填充,因为容易造成字串截断损坏导致程序异常。
CXA 默认使用0x20填充,而点睛默认使用0x00填充,这是两者的不同之一 。
6.提示是否更改程序字体,“是”,CXA回写翻译字串后自动转换成中文程序,此时,可以“把新程序改名为应用程序”(即将汉化后的程序名称用原程序名称命名,而同时原程序名称会自动添加.old 标记)
此时即可测试汉化程序
7.下图中的“移除选定文件”后仍有许多空位置,即第5步中的0x20填充的结果;换成0x00填充,则空位置被自动截断不显示,更为美观。
在保证程序正常运行的前提下,可以尝试使用0x00填充。
|