关于WinHex13.8R4的language.dat文件的中文化问题

字体: | 打印

关于WinHex13.8R4language.dat文件的中文化问题

    即使我用Visual Localize 6.12简体中文注册授权版对WinHex.exe文件进行了完整的中文化处理,但菜单和对话框的部分内容还是英文版,经过研究发现,是language.dat文件在做怪。起初,为了省事,就直接修改网络上发布WinHex13.6R7language.dat中文语言文件使用。可是发现基本上已经能够使用。但是,所有应该出现【确定】按钮位置,确定这两个字不见了,成了白板,实在不完美!有朋友戏称:这是白板确定的简体中文版!有感于此,决定研究language.dat文件的结构,进行再次中文化,实现完美的简体中文版。
    准备工作:英文版的language.dat文件有193KB179999字节),太大了!必须精简成只保留英文内容的文件。使用WinHex12.8R6简体中文版打开,选块开始→选块结束,编辑保存到文件,得到39.7KB40679字节)的language.dat文件。然后使用Hex Workshop将第714字节用00填充:
为了对此language.dat文件进行中文化,必须弄清楚language.dat文件开头第34字节和第56字节的含义:
    第34字节表示:默认语言、多国语言总数:WinHex的默认语言是英语,16进制ASCII代码A5;多国语言有德语、法语、西班牙语、葡萄牙语、意大利语,总数5种,16进制表示为05。因此,当翻译为简体中文语言时要进行改写:A5052205
    第56字节表示:默认语言本文件中占有的字节总数,此处D99E16进制)=4066510进制)字节,加上第11414字节,正好是40679字节。因此,当翻译完毕后,检查右下角中文language.dat文件的字节数,减去14字节,点Hex Workshop自带的基数转换器按钮,将其转换为16进制值,用此值填充改写D99E
WinHexlanguage.dat文件的字符块结构为:
0000 默认语言扩展语言数 默认语言字节数 扩展语言1字节数 扩展语言2字节数 扩展语言3字节数 扩展语言4字节数 扩展语言5字节数 默认语言字符串1 00默认语言字符串2 00默认语言字符串3 00……00默认语言字符串N00
    每个字符串都以00为字符串结束标志,全部扩展语言字符串结束标志为再加00,依次也可以这样理解它的结构:
0000 语种描述 语言字节数 语言字符串 0000  (语言字符串之间用00分隔)
    按照汉化新世纪《汉化教学文集》的说法,WinHex13.8R4language.dat文件字符块结构应该归属于长度 ASCII字串。
    了解了上述基本知识后,就可以用Hex WorkshopWinHexlanguage.dat进行简体中文翻译作业了,只是一定要记住:翻译完毕,一定要修改翻译后的16进制字节数。

                                              ynafa@126.com 2007.03.20

[ 本帖最后由 ynafa 于 2007-3-20 02:27 编辑 ]



SpxImage1.jpg


我也来说两句 查看全部评论 相关评论

  • wuyoucaoa (2007-3-20 08:04:46)

    长长见识.
File :
html/200703/t11043.html
Have no access to write!