字串替换器 1.04


简介


本软件是一个本地化工具,主要用于非资源格式的本地化工作,支持的种类包括非资源格式的 C 编译的程序中的 ASCII 字符串和 UniCode 字符串、非资源格式的 Delphi(C++ Builder)编译的程序的字符串、VB 编译的程序的字符串、文本格式的字符串等的提取及替换。同时它还拥有方便的版本升级功能、字典处理功能,使您在翻译新版本时事半功倍。本软件提供英文、简体中文和繁体中文三种语言选择,并且您也可以很方便的添加对其它语言的支持。

Win98/Me/2000 可以直接运行本软件,Win95/NT4 需要安装 VB5 运行库。你可以在微软的站点 MSVBVM50.EXE 或者我们的站点 MSVBVM50.EXE 下载它。



使用方法


本软件主要用于非资源格式的本地化工作,对于资源格式的本地化工作,虽然也可以使用本工具处理,但因为无法做到大于源字串的替换,所以推荐使用其它一些工具(如 Visual C++、ResHacker 等)处理。

本软件的每一个界面上都有一段说明,在使用其功能之前,请先阅读这些说明。

对于所有的功能,其中所说的“对照文件”和“字典文件”都忽略空行,所以可以随意添加空行,不过只有空格的行不被视为空行,而“对照文件”中的其它行以如下格式重复:

            偏移量:源字串
            修改后的字串

“偏移量”用十进制表示,一般应由程序自行填写,用户不要再做修改;“源字串”也一样由程序自行填写,用户也不要再做修改。

而“字典文件”中的其它行以如下格式重复:

            源字串
            修改后的字串

同样的,“源字串”也由程序自行填写,用户不要再做修改。

另外,所有对可执行文件进行的替换工作,都不能进行长于源字串的替换,如果修改后的字串长于源字串,本程序将自动剪裁以便和源字串长度相同。如果短于源字串,将会以十六进制数“00”或空格(在“替换字串”界面上选择“多余补空格”)填充空余。

对于 VB 和 Delphi 编译的程序,因为有字串长度计数器,所以使用其专用功能不仅能提高查找的准确性,而且替换后的程序的兼容性也会更好,故推荐对于它们使用其专用的查找和替换功能。

本工具约定,VB 格式的 UniCode 的对照文件的扩展名是“.txt”,Delphi 格式的 ASCII 对照文件的扩展名是“.d.txt”, UniCode 格式的对照文件的扩展名是“.u.txt”,而 ASCII 格式的对照文件的扩展名是“.a.txt”。这四种对照文件的格式完全相同。程序会根据所选文件名判断它的类型,虽然用户仍然可以更改类型,不过还是建议使用约定的扩展名。

因为本程序在替换的时候做源字串的检测,所以选错类型一般不会造成不可挽回的后果,不过还是慎重为好。

对于 UniCode 和 ASCII 的查找,并没有前缀作为判断标志,所以如果一个字串的实际长度大于所选的最大长度,则采取右截取的方式。比如实际字串“Text”,而最大长度选择“3”,则提取此字串为“ext”。 对于内含回车换行的字串,使用替换方式进行处理,如下:

对于内含回车换行的字串,使用替换方式进行处理,如下:

            回车 替换成 \r
            换行 替换成 \n
            \    替换成 \\
            "    替换成 \"
            Tab  替换成 \t

“翻译新版本”时,既可以使用“字典文件”,也可以使用“对照文件”。而“对照文件”可以使用“偏移量方式”的“分割对照文件”功能得到“字典文件”。

本程序查找时没有进度条指示进度,不过用户可以预估查找时间。在 P200 上的测试数据如下:查找 UniCode (包括 VB)的速度是 1MB/s ,而查找 ASCII (包括 Delhpi)的速度是 0.5MB/s 。

对于“清除预定义项”,用户可以自行修改其同目录下的“PDef.dat”文件。而对于它,可以使用“翻译项方式”的分割方式分割对照文件,把得到的“.2”文件中想添加的项加入“PDef.dat”即可。不过就我的测试而言,“清除预定义项”的功能对于不特定软件的效果并不是很显著,当然了,对于特定的软件(把不需要的项加入了“PDef.dat”的)效果还是不错的。

对于 INI 文件需要注意的是,程序只把第一个字符是“;”的行作为注释,如果有如“属性=值;注释”这样的行,将把“值;注释”当作“值”处理。

繁简用语替换时,如果用户的使用界面是简体中文,则使用 GBK 内码,如果用户的使用界面是繁体中文,则使用 BIG5 内码,分别对应不同的字典文件,如果本软件提供的词汇量不够的话,可以自行添加。此功能不进行内码转换,所以如果需要转换内码的话,请配合使用其它软件。在字典中请尽量使用长的词汇,这样可以增加准确性。我测得的替换速度约为 50KB/s (字典文件过大时也会对速度造成影响)

使用 VA 方式查找可以增加查找的准确率,使查找到的垃圾字串大为减少,另外,“VA非控制符”、“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”、“VA非限制查找”可以用于其它语系(如中文、日文等)的程序的查找,可以用于简体中文和繁体中文程序的互相转换,也可以用于对已汉化的程序进行进一步的修改。其中“VA非控制符”表示查找不是控制符的字符串,不过也查找回车换行和 Tab。“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”也同样查找“英文和符号”。(控制符指 ASCII 值小于 32 的符号;保留区是 UniCode 指保留的部分用于扩充的区域。)

使用 VA 方式查找时有时有重叠项的现象,在替换前需要删除这些项,不过您可以在查找时使用“排除重叠项”让软件自行排除这些项。

对于所有的“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“非保留区”、“非控制符”“非限制查找”方式得到的对照文件,需要用户自行删除非法项,否则在替换时将会出现错误。

“快捷键转换”方式的“文本替换”对应“英转中”时的快捷键设置,将“&File”转换成“File(&F)”。

“能否完成替换”方式的分割合并功能使用两种新的扩展名:“.ok”和“.not”,分别对应可以完成替换的字串和将会被截断的字串。请保持这两个文件的原始排列顺序,只有这样才能顺利完成合并。



版本更新


1.04 版,“文本替换”增加“快捷键转换”方式;增加“能否完成替换”方式的分割合并对照文件功能;增加选项界面。修改“VA模式”的算法,使其查找大型文件的速度大为增加。修正两个 Bug 。

1.03 版增加查找“VA英文和符号”、“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”、“VA非限制”六种新的 UniCode 查找方式;对于 VA 方式查找增加了“排除重叠项”的选项;增加 FAQs。修正一个 Bug 。

1.02 版增加查找“VA英文和符号”、“VA非控制符”、“VA非限制查找”三种新的 ASCII 查找方式。对繁体用语进行了部分修改。

1.01 版增加“冒号格式”的文本查找替换功能,增加繁简用语替换的功能(亦可用于普通文本),对繁体用语进行了修改。

1.0 版增加“清除预定义项”功能,增加对于 INI 格式的文本资源的支持,增加了多语言的支持,支持的语言为英语、简体中文和繁体中文。另外,1.0 版对文件扩展名做了修改:“.偏移量”改为“.off”;“.奇数行”改为“.1”;“.偶数行”改为“.2”。

0.94B 修正查找 Delphi 字串时的一个 Bug ,这个 Bug 导致查找到的 Delphi 字串不全。另外,还做了一些小调整。把配置文件改名为“StrRep.ini”并且把其中的配置项名改为英文,以便在繁体中文 Windows 上运行的时候不会出现一些不必要的麻烦。(不过本版仍暂不提供繁体版。)

0.94 版增加完全的页面自动转移支持;增加了对于Delphi 字串的查找替换功能;调整了 VB 字串的对照文件中的偏移量,原来偏移量指向字串计数器,现在偏移量指向字串本身,以便和其它字串格式统一。(本版暂不提供繁体版。)

0.93 版增加软件测试、清除冗余项、格式转换、查找文本资源、替换文本资源、查找 VB ASCII 的功能。支持内含回车换行的字串的查找;支持自定义文本编辑器;另提供所有菜单的快捷键。另外,本版同时提供繁体中文版。

0.92C 版修正在字符串中如果有“J”或“j”的话会出现的错误截断的问题。

0.92B 版修正写入 ASCII 的时候出现的错误截断的问题。

0.92 版增加文件的拖放支持;增加“多余补空格”的替换选项;增加对普通 UniCode 的支持;增加对于 ASCII 的支持。也就是说,现在本工具已经不仅可以查找和替换 VB 程序的字串,其它的程序也一样可以。

0.91 版新增翻译新版本、分割对照文件、合并对照文件的功能,增加无限制查找方式,并且对用户界面进行了很大的改动,对每一种功能都加入了比较详细的说明。

0.90 版,本软件的第一个版本,提供对 VB 编译的可执行文件进行字串替换的工作,用以辅助汉化 VB 编写的程序。


关于注册


这是本软件的注册版本,未注册版本有一些功能(“替换字串”、“替换文本资源”和“选择性替换”)只能使用 20 次。一些功能(“VA英文和符号”、“VA非控制符”、“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”、“VA非限制查找”方式的 ASCII 及 UniCode 查找)不能使用。

要注册本软件,请首先访问购买页面以便取得您个人的注册码。

对于没有美元和信用卡的国内用户(含港澳台地区),可以邮寄 100 元人民币含港澳台币)至以下地址:

        地址:北京市海淀区宝盛里小区10号楼5门301
        收款人:梁利锋
        邮政编码:100085

请同时发送一封 E-Mail 至 sales@overnimble.com ,写明您的身份(和汇款单上一致),注册码将通过 E-Mail 寄回。

当您得到您的注册码后,运行本软件,选择“输入注册码”菜单并输入您的注册码即可。



感谢


伟:  bug 报告;一些好的建议。

乾:  bug 报告。

大宇: 一些好的建议。

阿春: bug 报告。

Ronnier:一些好的建议。

吴佳勋: 一些好的建议。

其他一些关心本工具的朋友。

还有你 :)


联系方法


对本软件有任何意见和建议,请 E-Mail 至:support@overnimble.com

获得最新版本或我们的其它软件,请访问:http://www.overnimble.com


CopyRight © OverNimble Inc. 2001