`
happmaoo
  • 浏览: 4333681 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

软件本地化与汉化

阅读更多
<!-- ********* ItemTemplate.BodyColPostBodyEnd (/1 row) ************* //-->
<!--修改带图片显示问题(加子表) by venjiang 0913--> <!--修改带图片显示问题(加子表)-结束-->

软件本地化与汉化

----看不懂命令、看不懂帮助——因为,一切都是英文的。现在,大部分软件用户的英语水平不高,使用英语软件有不同程度的困难。我们常见到这样的朋友,听说某软件功能很强大,千方百计搜寻了来,安装后一看复杂的英语界面,根本就不会用,只有自叹英语太差。
解决办法至少有两种:

  1. 帮助用户提高英文阅读能力;
  2. 制作中文版软件。

短时间提高英文阅读能力,希望所有用户都精通英文是不现实的。事实上,也并非只有英文水平较低的用户才喜欢使用中文界面的软件。绝大多数人使用自己的母语进行交流最为自如。即使外语水平很高的用户,使用外语进行工作的效率也往往比用母语低。
制作中文版软件,软件的开发商和经销商为了扩大潜在客户群、减少培训与支持费用、提高用户对产品的信心、增强产品竞争力等原因,也会推出本地化版本的软件。满足用户的需求,战胜竞争产品赢得客户。
并非所有的软件都有进行本地化,最终的决定性因素是本地化投资是否能带来相应的收益。这就是我们看到许多软件有日文版甚至繁体版,却没有简体版的原因。
为了推动我国计算机使用的普及,国内汉化人,不记报酬,付出无偿的艰苦劳动,把许许多多软件界面汉化成中文。为更多的朋友学习计算机,使用计算机提供方便之门。对普及计算机应用、加快我国信息技术发展都是起到了重大的贡献。

汉化小知识:

  • 本 地 化(localization):对软件进行加工,使之满足特定市场上的用户对语言和功能的特殊要求。可能涉及文字的翻译、用户界面布局调整、本地特性开发、联机文档和印刷手册的制作,以及保证本地化版本能正常工作的软件质量保证活动。localisation也是本地化的意思,较少用。
  • 国 际 化(Internationalization):在开发程序内核的过程中,功能和代码设计均不局限于某种特定语言,使创建不同语言版本的过程得以简化的软件工程方法。国际化面向编程和设计,而本地化更接近一种“转换”。也叫“全 球 化(Globalization)”
  • 汉 化(hanzify):“本地化”的中国本地化。较之“本地化”,它更为通俗易懂,不过由于专指从其他语言到中文的转换,随着国际交流的增加,业内人士似乎已渐渐倾向于使用“本地化”。国内业余汉化人倾向使用“汉化”,主要指对软件的用户界面从其他语言到中文的转换。
  • 资 源(Resource):Microsoft资源文件 (.RC) 包含的字符串、对话框、菜单、快捷键、图标、位图等。在本地化过程中通常指软件中需要翻译的内容,即 localizable resource,包括delphi资源文件dfm包含的字符串和一些非标准的资源形式(ASCII)。

本地化简介:

本地化是商业软件出于营销策略考虑,满足特定市场上的用户对语言和功能的特殊要求,而对软件进行加工。一般包括以下五项工作:

1. 翻译包装和宣传材料

翻译包装是本地化的最基本层次,所需投入最小,但所能带来的收益也最小。

2. 支持当地语言

只有支持当地语言才可能真正进行本地化。这部分工作涉及源代码修改,通常由产品开发人员完成。如果在开发过程中已经实施了国际化策略,就很少有额外的代码工作。完成这一层次的工作后,软件用户界面仍然是英文的,从外表上看与英文软件完全相同,区别主要是:

  • 可运行于本地语言的操作系统上
  • 可接受本地语言输入并用本地语言输出

3. 转换用户界面和文档

在此基础上进行用户界面和文档的转换才有实际意义,也就是传统意义上的“本地化”。也有人考虑在软件能用当地语言输入输出之前就翻译文档,这似乎可以改善产品的易用性,但既然用户还是必须用英文工作,这看起来有点本末倒置。
出于费用、时间和技术等方面的考虑,转换用户界面和文档的工作大多由专业本地化服务提供商进行。委托方通常会根据预算和项目周期的限制按照下列顺序决定本地化的范围:

用户界面 -> 联机帮助 -> 手册 -> README -> 样例 -> 演示和教程 -> 其他

对一些规模较大、专业性较强的软件,可以考虑先转换部分手册,待时机成熟后再进行全面的本地化。

4. 支持本地硬件和软件

由于各个国家和地区流行的硬件和软件可能会有所不同,产品的兼容性可能会成为障碍。在欧美一切正常的软件到中国后“水土不服”不足为奇。以支持本地硬件和软件为目标的本地化,有时并不困难,只要有产品开发人员的支持即可,有时却会遇到技术难度大、风险高的难题。

5. 提供本地化功能

针对当地用户的特殊需求修改功能特性或直接进行开发。例如,

  • 提供汉字竖排和从右至左布局的功能
  • 提供符合中国国家标准的土建工程图纸标注功能

我们看看台湾一家专业本地化服务提供商的中文化流程、计划管理流程和使用的工具。

1.中文化流程


User Interface
Help

Manual

2.计划管理流程

Project Planning Project Tracking & Control Risk Management

3.使用的工具:

  • 客户所提供的用户端工具程式
  • TRADOS - 此工具可确保一致性
  • TargeTek Glossary Finder - 可以简单快速找到词汇。
  • SC-TC 文件转换程式 - 可简单将文件作简、繁之间转换,让两岸不再有文件的困扰。




IP 地址: 已登录 <nobr></nobr>
<!-- ********* ItemTemplate.End ************* //-->
<!-- ********* AlternatingItemTemplate.PostHeader ************* //--> <!-- ********* AlternatingItemTemplate.PostHeaderEnd ************* //--><!-- ********* AlternatingItemTemplate.BodyRowStart ************* //--><!-- ********* AlternatingItemTemplate.BodyColUserInfoStart (2 rows:start of rowspan) ************* //--> <!-- ********* AlternatingItemTemplate.BodyColUserInfoEnd (/2 rows:end of rowspan) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostHeaderStart (1 row) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostHeaderEnd (/1 row) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostBodyStart (1 row) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostBodyEnd (/1 row) ************* //-->
第 2 楼
2004-7-23, 9:29 上午
wellknow 离线,最后访问时间: 2005-4-8 15:50:32wellknow



发帖数前10位
<!--用户等级-->
超级管理员
职务: 超级管理员
师长
等级: 师长
注册: 2004年6月1日
区域: 中国广东省中山市
积分: 1,017
精华: 1
发贴: 713

ASP NET Forums2.0 中文版开发团队
Re: 软件本地化与汉化
<!--修改带图片显示问题(加子表) by venjiang 0913--> <!--修改带图片显示问题(加子表)-结束-->

判断资源的位置和资源类型

伟乾汉化新世纪

现在软件开发工具很多,编译出来的软件的资源类型也是各种各样。用一种方法、一个工具来汉化不同类型的软件是不现实的。我们必须根据不同的资源类型,采用不同的方法进行汉化。
(一)资源的类型
通常软件中需要汉化的资源,是放在.exe和.dll格式的文件中,有些软件的资源放在专门的语言文件中,一般都是文本文件,扩展名五花八们,随作者喜欢。
个别软件的资源,作者在编译时就隐藏起来,根本无法找到。碰到这样的软件,除了反编译,没有别的方法了,不过这种情况比较罕见。找到需要汉化的资源位置后,还需查清楚资源的类型。
从汉化的角度看,资源的类型可分为 6种:
①VC类标准资源(包括Menu、Dialog、String、message table资源);
②Delphi类标准资源(Rcdata资源);
③非标准的Unicode字符(主要是一些VB编译的程序,程序的Unicode字符不出现在Menu、Dialog、String等资源中,有少数VC、Delphi编译的程序含有少量这样的字符);
④非标准的Ascii字符(指的是不出现在String、Rcdata等资源中Ascii字符);
⑤语言文件(一般指包含语言资源的文本文件,扩展名多由作者随意取);
⑥其它(包括Batmap资源中的文字等等)。
这里的资源分类,纯粹是从汉化的角度,所谓的标准资源,只是我们汉化起来比较方便而已:-)
下面,我们通过具体的软件汉化实战讲解如何判断资源的位置和类型。
准备工具:eXeScope 5.12 或 Resource Hacker 2.4.0.2
Hex WorkShop 3.02
由于大多数软件的资源都放在exe或dll文件中,我们查找资源一般都是先看看在exe\dll文件中是否存在需要汉化的资源和资源的具体类型:-)
我们可以使用exe资源查看修改软件:eXeScope 或 Resource Hacker ,将软件目录的所有的exe
dll文件打开,一一查看里面的资源,看看是否有我们需要汉化的资源(Nenu、Dialog、String或Rcdata等)。

 

(1) 实战一:判断程序 Opera 的资源
运行eXescope,选择菜单"文件|打开"或工具栏的打开按钮,出现"打开"对话框,在"搜索"标签项选择Opera程序的目录,Opera目录的所有exe、dll文件和子目录都显示了。(如图 1)

一一选择当前目录和子目录所有的exe、dll文件打开,查看是否有需要汉化的资源。我们首先选择打开文件 "Opeay32.dll",在eXeScope的信息列表窗口显示"Opeay32.dll"的文件头、导入、导出等信息,没有汉化需要的资源(resourse)信息(如图 2),表明在这个文件中没有我们要找到东西,pass。

打开下一个文件"Opera.exe",在信息列表窗口显示有"Resource"资源项。单击"Resource"资源项左边的标志 + ,显示文件"Opera.exe"的具体资源项。其中 Menu、Dialog、String和Rcdata 属于前面说过的第 1、2类资源。(如图 3)

查看这几个资源的具体内容,单击"Menu"资源左边的标志 + ,出现很多子项。单击选择任一子项,在eXeScope右边的信息显示窗口显示这"Menu"子项的资源内容(如图 4)。我们现在证实了这个文件里有我们需要汉化的资源,你可以直接在这里修改汉化,也可以使用其它汉化工具汉化。

按照以上方法,继续把其它的exe,dll文件打开,区分那些有资源的,那些没有资源的。我们另建一个目录,把需要汉化的文件全部复制过去,就可以进行下一步的汉化工作了。
我们举的例子Opera,是标准的VC资源,里面的rcdata资源非常简单,与标准的delphi资源里面的rcdata资源差别很大。下面,我们再举一个标准的delphi资源例子。

(2) 实战二:判断程序 browsermaster 的资源
打开文件"bmstrj.exe",显示只有String、Rcdata资源项,而没有Menu、Dialog资源项。这个就是典型的delphi/c++Build编译程序的资源特点,需要汉化的资源主要在Rcdata中。选择具体Rcdata子项,在信息显示窗口显示具体Rcdata子项(窗体)的内容(如图 5)。同样,可以在这里修改汉化,也可以用其它汉化工具汉化。

注意:1.有时使用eXeScope打开文件时,会出现以下的错误信息(如图 6)。可能程序正运行或文件设了只读属性,此时关闭该程序或把该文件去掉只读属性即可!

2.打开文件正常,可以看到具体的资源项和资源子项,但单击资源子项,想查看子项的内容时,出现这样的信息窗口(如图7),无法查看资源子项内容。这是因为文件使用了一些压缩加壳软件加密过,这就需要对文件进行解压脱壳处理后,才能汉化。这样的程序很多,如Acdsee,Winxfile等等。

(3) 实战三:判断程序 Vopt99 的资源

Vopt99是用VB编译的程序,资源类型与上面两个例子不同。我们打开Vopt99目录的exe,dll文件,都找不到menu、Dialog、
String或Rcdata之类的资源。(如图 8)

在Vopt99的运行界面(如图 9),记下&Defrag 和 Files and Folders 两个字符串。你一定奇怪:菜单显示的是Defrag,为何在前面加一个'&'?这是Windows标准菜单的一种默认的快捷方式,你看到Defrag菜单的D字母下面有下划线,表示用户同时按下Alt和带下划线的字母时,就可以选择相应的菜单项。表现在资源字符中,就是在字母前面加“&”。

使用16进制编辑软件 Hex WorkShop 打开Vopt程序的主文件Vopt99.exe,选择菜单“编辑|查找”,出现“查找”对话框,在类型标签选择“文本字符串”,值标签填写“&Defrag”,选项标签选择“ASCII 字符串”,按“确定”。(如图 10)

程序找到一个“&Defrag”字符串,高亮显示。按“F3”继续查找下一个,我们找到两个“&Defrag”字符串。(如图11,图12)


分别选改这两个字符串为“&Defra1”“&Defra2”,保存。运行Vopt99程序,会看到修改后的效果,证实这两个字符串是需要汉化的资源。(如图 13) 

按以上方法,搜索字符串“Files and Folders ”,没有找到字符串。我们在选项标签改选择Unicode 字符串,按“确定”按钮。(如图 14)

程序找到一个“Files and Folders ”字符串,高亮显示。按“F3”继续查找下一个,文件只有这个字符。(如图 15)

注意:1.在Vopt99这个例子中,需要汉化的资源有“非标准的Unicode字符”和“ASCII 字符”两种;
2.一般查找文件的汉化资源,发现没有①VC类标准资源(包括Menu、Dialog、String资源)和②Delphi类标准资源(Rcdata资源),只需要使用Hex WorkShop 打开程序的主文件,查找有没有界面出现的字符,而不用一一打开所有的exe和 dll文件,因为一般程序的“非标准的Unicode字符”和“ASCII 字符”都在主文件中。
3.汉化时,发现有些程序VC类标准资源和Delphi类标准资源这两类都进行了汉化,运行时还是有英文出现,这是因为文件里存在少量的“ASCII 字符”资源需要汉化,个别情况下,是因为存在少量的“非标准的Unicode字符”资源需要汉化。

(4) 实战四:判断程序 CompuPic 的资源
我们首先看看程序CompuPic是否是第 1或 2种资源,用 eXeScope打开程序CompuPic目录的文件,只发现有一个Dialog子项(如图 16)。但这个程序不可能只有这点资源,一定还有其它资源类型。

运行CompuPic程序(如图 17),选取菜单出现的字符串,我们这次选取复杂一点的“D&isconnect Network Drive”。使用16进制编辑软件 Hex WorkShop 打开CompuPic程序的主文件,查找“D&isconnect Network Drive”。在选项标签不论选择Unicode 字符串或ASCII 字符,都没有找到字符串“D&isconnect Network Drive”。打开其它exe,dll文件,结果都一样,没有找到字符串“D&isconnect Network Drive”。说明这个程序存在其它的资源类型,我们继续找。

这里可使用Windows的查找功能,选择“开始|查找|文件或文件夹”。(如图 18)

出现“查找对话框”后,在“包含文字”标签下填写“D&isconnect Network Drive”,搜索标签选择CompuPic所在的目录,注意“包含子文件夹”标签要选定,按“开始查找”。发现在子目录ENGLISH中 main.msg文件包含这个字符串(如图 19)。打开这个文件,发现是文本格式的文件,就是我们前面说的第⑤中资源类型:语言文件。

(5) 其它资源类型

有些软件的英文字符比较特别,不是出现在以上的几种资源类型中,而是在图片中。对于VC编译的程序来说,是存在Bitmap 资源中。如程序Ember的工具栏按钮(如图 20),Remove IT99的其中一个界面(如图 21)

对于delphi编译的程序来说,这种图片资源是内嵌在Rcdata子资源项中的,eXeScope程序是无法看到和修改这种资源类型的,只能用另一汉化工具 Language localizator 查看和修改。
程序winace的sfxlib.dll文件的资源比较特别(如图 22),有个SFX资源项,SFX的资源子项导出来,再用 eXeScope打开(如图 23),可以看到好像一般的exe文件的资源。汉化时,我们先导出来,汉化后再导进去。这个程序的SFX资源子项都用 Petite压缩程序加了密,首先需要脱壳后,才能进行汉化。

一般来说,汉化的资源就是以上这几种,只要你按照以上方法,一般都可以找到需要汉化的资源。不过我不能保证你一定能找到需要汉化的资源,因为有些程序编译时,就对资源进行了处理,将资源隐藏起来,根本无法用上述方法找到。

疑难解答:
①有朋友问,如果软件的文件很多,用eXeScope一个个打开,你想要了我的老命?有没有简便的方法?
其实迅速排除无关的文件的方法还是有的,你运行程序,然后打开程序的目录,选择全部文件,删除。程序正在调用的文件,是无法删除的,我们有时就是这样做某某程序的精简版。不过这个方法不太保险,在少数情况下,某些程序暂时没有调用的文件被删除,造成某些功能丧失,也使某些汉化资源遗漏。
还有一种方法,可以快速找到某些汉化的资源在那个(些)文件中。如果资源类型是VC标准资源格式的菜单、对话框、字符串、信息表,我们可以使用 PASS Resource Finder 工具,可以在指定目录中查找含有指定字符串的资源的文件,是在进行汉化之前用来定位资源所在的辅助汉化工具。如果是delphi标准格式的汉化资源,上述方法无能为力。因为Radata资源是 ASCII字符,所以我们可以使用上文说的“使用Windows的查找功能”查找文本资源的方法,在指定目录查找含有指定字符串的资源的文件。

②有汉化人问:汉化某个软件,主要的界面、对话框都汉化了,发现运行时还是有少数英文字符,我按照你说的上述方法查找,把程序目录里的文件都打开检查,排除是非标准的unicode、ascii字符或文本文件。
出现这种情况,在排除汉化人遗漏了ascii、unicode等原因。我们都知道,程序安装时,有时会往注册表、windows的system目录下放文件或写东西。有时候,某些个别汉化资源就在这些地方,你可以到这些地方找找。有一些软件的安装后,会往系统的右键菜单添加命令,这些命令菜单的汉化资源的文件,往往在system目录里。


我们找到资源、了解了资源的类型,就可以使用不同的汉化工具进行汉化了。汉化并不是很困难的事情,需要的是你的认真态度、“咬文嚼字”的细心、耐心与责任心!仅此而已……在以后的教程中,我们将由简入深,系统讲解汉化知识。为了使更多的计算机用户掌握这门技术,我们把长期收集汉化教学资料和自己汉化心得重新总结,将通过大量的实例,以步步为营、手把手的教学方式,让读者轻松快速地掌握软件汉化的技术和基本技巧。在本教学中引用了大量的他人的成果。本教学目前正在制作中。也欢迎你提出自己的建议和看法(weiqian@21cn.com ),共同完善。如有错误欢迎指正!有关软件你可以到我们的总站--汉化新世纪下载





IP 地址: 已登录 <nobr></nobr>
<!-- ********* AlternatingItemTemplate.End ************* //--><!-- ********* ItemTemplate.Start ************* //-->
<!-- ********* ItemTemplate.PostHeader ************* //--> <!-- ********* ItemTemplate.PostHeaderEnd ************* //--><!-- ********* ItemTemplate.BodyRowStart ************* //--><!-- ********* ItemTemplate.BodyColUserInfoStart (2 rows:start of rowspan) ************* //--> <!-- ********* ItemTemplate.BodyColUserInfoEnd (/2 rows:end of rowspan) ************* //--><!-- ********* ItemTemplate.BodyColPostHeaderStart (1 row) ************* //--><!-- ********* ItemTemplate.BodyColPostHeaderEnd (/1 row) ************* //--><!-- ********* ItemTemplate.BodyColPostBodyStart (1 row) ************* //--><!-- ********* ItemTemplate.BodyColPostBodyEnd (/1 row) ************* //-->
第 3 楼
2004-7-23, 9:30 上午
wellknow 离线,最后访问时间: 2005-4-8 15:50:32wellknow



发帖数前10位
<!--用户等级-->
超级管理员
职务: 超级管理员
师长
等级: 师长
注册: 2004年6月1日
区域: 中国广东省中山市
积分: 1,017
精华: 1
发贴: 713

ASP NET Forums2.0 中文版开发团队
Re: 软件本地化与汉化
<!--修改带图片显示问题(加子表) by venjiang 0913--> <!--修改带图片显示问题(加子表)-结束-->

EXE、DLL文件的脱壳

伟乾(汉化新世纪)整理

  我们在软件汉化时,经常会发现这种情况。用eXeScope 打开 EXE、OCX 或 DLL 文件,打开文件正常,可以看到具体的资源项和资源子项,明明看到有菜单、对话框、字符串、RCData、光标、图标、位图等资源存在。但单击资源子项,想查看子项的内容时,出现这样的信息窗口(如图1),无法查看资源子项内容。

这是因为文件使用了一些压缩加壳软件加密过,这就需要对文件进行解压脱壳处理后,才能汉化。这种压缩与我们平时接触的压缩工具如winzip,winrar等压缩不同,winzip压缩后的文件不能直接执行,而这种 EXE 压缩软件,EXE文件压缩后,仍可以运行。这种压缩工具把文件压缩后,会在文件开头一部分,加了一段解压代码。执行时该文件时,该代码先执行解压还原文件,不过这些都是在内存中完成的,由于微机速度快,我们基本感觉不出有什么不同。这样的程序很多,如 The bat,Acdsee,Winxfile等等。
  这种压缩加壳属于软件加密,现在越来越多的软件经过压缩处理,给我们汉化带来许多不便,软件汉化爱好者也不得不学习掌握这种技能。现在脱壳一般分手动和自动两种,手动就是用TRW2000、TR、SOFTICE等调试工具对付,对脱壳者有一定水平要求,涉及到很多汇编语言和软件调试方面的知识。而自动就是用专门的脱壳工具来脱,最常用某种压缩软件都有他人写的反压缩工具对应,有些压缩工具自身能解压,如UPX;有些不提供这功能,如:ASPACK,就需要UNASPACK对付,好处吗简单,缺点吗版本更新了就没用了。另外脱壳就是用专门的脱壳工具来对付,最流行的是PROCDUMP v1.62 ,可对付目前各种压缩软件的压缩档。在这里介绍的是一些通用的方法和工具,希望对大家有帮助。
侦测壳的类型:

  我们知道文件被一些压缩加壳软件加密,下一步我们就要分析加密软件的名称、版本。因为不同软件甚至不同版本加的壳,脱壳处理的方法都不相同。这类查壳的工具很多,我这里介绍大家使用 Filebase for eXecutable (简称 Fi),它是一个文件格式分析器,除了用来查壳,还有很多功能,我们在以后汉化教程还会接触它。由于 Fi 是使用dos命令格式,因此你必须在"我的电脑"的地址栏中操作(如果你还没有升级到IE4.0以上,你可能要在"开始"--"运行"中进行操作),操作如下:
  首先我们把要分析的文件复制到 Fi的目录,确定是在 Fi的目录下,然后在"我的电脑"地址栏中输入以下的命令:fi 文件名.后缀名 (例:fi acdsee.exe )

出现如下界面(见图 ):哦,原来是用Aspack1.804加密的:-)

  
  我们知道文件的加密方式,就可以使用不同的工具、不同的方法进行脱壳。下面是我们软件汉化时常常会碰到的加壳方式及简单的脱壳措施,供大家参考:-)
(1)Aspack: 用的最多,但只要用UNASPACK或PEDUMP32脱壳就行了
(2)ASProtect+aspack: 次之,国外的软件多用它加壳,脱壳时需要用到SOFTICE+ICEDUMP,需要一定的专业知识,但最新版现在暂时没有办法。
(3)Upx: 可以用UPX本身来脱壳,但要注意版本是否一致,用-D 参数
(4)Armadill: 可以用SOFTICE+ICEDUMP脱壳,比较烦
(5)Dbpe: 国内比较好的加密软件,新版本暂时不能脱,但可以破解
(6)NeoLite: 可以用自己来脱壳
(7)Pcguard: 可以用SOFTICE+ICEDUMP+FROGICE来脱壳
(8)Pecompat: 用SOFTICE配合PEDUMP32来脱壳,但不要专业知识
(9)Petite: 有一部分的老版本可以用PEDUMP32直接脱壳,新版本脱壳时需要用到SOFTICE+ICEDUMP,需要一定的专业知识
(10)WWpack32: 和PECOMPACT一样其实有一部分的老版本可以用PEDUMP32直接脱壳,不过有时候资源无法修改,也就无法汉化,所以最好还是用SOFTICE配合 PEDUMP32脱壳

  我们通常都会使用Procdump32这个通用脱壳软件,它是一个强大的脱壳软件,他可以解开绝大部分的加密外壳,还有脚本功能可以使用脚本轻松解开特定外壳的加密文件。下面摘选了捷迅中文化天地(杨贯仲) 写的 Procdump的教程,写的非常好,附录如下: 

------------------------------杨贯仲的文章------------(开始)------------------------------

  由以上两个可执行程序的加壳分析工具知道 TPM1.0 是被UPX 0.70加压的,顺便说一声,前段时间出的 AcdSee32的2.42版 是用Aspack1.803加压的,Mass Downloader V1.2.62 Beta 2 是用Aspack1.804d加压的。下面我们打开PROCDUMP32的主程序:

prodump1.GIF (14428 字节)

  5.单击按钮“解包”,弹出如下对话框:

prodump2.GIF (6141 字节)

  将选择解包方式设为:UPX,然后单击“确定”,选择要解包的程序为:TPM.exe

prodump3.GIF (6739 字节)

  单击按钮“打开”后将出现如下窗口:

prodump4.GIF (8107 字节)

  此时Procdump将自动打开TPM并分析处理它的加密壳,注意此时一定要等TPM完全加载后才单击按钮“确定”,否则的话你又要重新来过了,单击按钮“确定”后将接着出现如下对话框,并且打开的TPM将自动关闭:

prodump5.GIF (7183 字节)

  单击按钮“保存”,将它保存为newtpm.exe,newtpm.exe就是我们需要的文件了,现在你可以将它自由的汉化了,怎么样,简单吧。

暂告一段落

 其实你也可以利用Procdump内置的解包功能来直接解开TPM,而无须利用GTW 2.51Filebase for eXecutable 2.10来识别要处理的文件,不过这样的成功率就要低很多了。方法是:
  1.在打开Procdump之前先打开TPM,然后再打开Procdump,在Procdump的窗口中选中TPM的进程,如下图示:

prodump6.GIF (15473 字节)

  单击完全保存后就会弹出如下对框要你选择要保存的文件名,任写一个保存就可得到你所需要可以汉化的未加壳程序了。

prodump7.GIF (6959 字节)

  采用这种方法的成功率要低很多,我建议你用GTW 2.51Filebase for eXecutable 2.10先将要处理的程序识别出来是用什么加壳的之后,才用Procdump选取相应的解包方式解开它。

  技巧:有时在Procdump的任务窗口中采用以上方法解不开,你可以试着在Procdump的部件窗口中采用以上方法,说不定会有让你以外的惊喜。


---------------------------------杨贯仲的文章-----(结束)----------------------------

  有时你使用Procdump还是无法将文件它解开或者是解开后却还是找不到资源(没有正确解开),建议大家用相应的专门针对这一类压缩壳的解壳工具来解开它。这些工具你可以在我们主页的汉化工具中找到,如果你还是解不开它,你可以问问以下的破解高手,他们会很热情的回答你的问题。
    侠客的家 nemc.yeah.net
    冰雪天地 iceworld.yeah.net

  注意:文件脱壳后,有条件最好在不同系统进行测试,看看是否运行正常。前段时间,经常有用户反映有些汉化作品无法运行。后来发现,汉化人是用 TRW2000 进行脱壳的,这种方法脱壳非常简单,可惜有一个大的BUG。解开的EXE文件会少些东西,造成解开后的文件只能同一系统中运行。如:在win95脱壳,只能在win95运行,在其他系统无法正常运行,反之亦然。作为汉化人,装多个系统是必须的,不仅脱壳后的文件,要在不同系统中测试,汉化后的文件,最好也能在不同系统测试。





IP 地址: 已登录 <nobr></nobr>
<!-- ********* ItemTemplate.End ************* //-->
<!-- ********* AlternatingItemTemplate.PostHeader ************* //--> <!-- ********* AlternatingItemTemplate.PostHeaderEnd ************* //--><!-- ********* AlternatingItemTemplate.BodyRowStart ************* //--><!-- ********* AlternatingItemTemplate.BodyColUserInfoStart (2 rows:start of rowspan) ************* //--> <!-- ********* AlternatingItemTemplate.BodyColUserInfoEnd (/2 rows:end of rowspan) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostHeaderStart (1 row) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostHeaderEnd (/1 row) ************* //--><!-- ********* AlternatingItemTemplate.BodyColPostBodyStart (1 row) ************* //-->
第 4 楼
2004-7-23, 9:30 上午
wellknow 离线,最后访问时间: 2005-4-8 15:50:32wellknow



发帖数前10位
<!--用户等级-->
超级管理员
职务: 超级管理员
师长
等级: 师长
注册: 2004年6月1日
区域: 中国广东省中山市
积分: 1,017
精华: 1
发贴: 713

ASP NET Forums2.0 中文版开发团队
Re: 软件本地化与汉化

Visual Localize 入门

作者:伟乾 (汉化新世纪)

★前言
其实汉化既是一件有益的事情,也是一件有趣的事情。现在流行DIY,玩家玩完硬件DIY之余,对软件也开始感兴趣了,象桌面修改,系统优化等等,这些都属于软件DIY范畴,其实软件汉化也属于"软件DIY”的一个部分。(这里的DIY,基本指的是对某些东东的修改,优化等等,难道硬件DIY就是自己生产一个CPU出来?所以软件设计编程一般不再此列)。你看,软件汉化大处来讲,是将一个软件的界面从外国语言变成中国的文字,方便网友,发扬国萃;小的范围,你也可以将一些软件,无论中英,将菜单、对话框,甚至是版本宣示,改成自己喜欢的内容、形状,或者将某个按钮屏蔽了(公用微机管理时就有帮助了),甚至改成自己的版本(拿来哄MM应该挺有意思)。怎么说呢——记得刚做汉化时,我就曾称汉化是一种“让你的软件个性飞扬的”的事情。因此,只要你有兴趣,有耐心,you can do it youself!
在上一讲中,我介绍了汉化资源的类型和如何寻找汉化的资源。这一讲,我将详细讲解如何汉化VC类标准资源格式的软件。

★资源判断
由于包含文字资源的文件一般是.exe、.dll为主,但不是所有软件的.exe或者.dll都有你需要修改的文字内容,所以,第一步,看看是否有你修要的资源,以及其分布——请先准备第一个工具——ExeScope;然后今天我们准备下手的软件是Opera。
运行Exescope(汉化版),"文件"——"打开",切换到Opera所在目录


所有的exe,dll文件都显示出来,我们先选择opera.exe,我们已经看到所有资源了,通常Menu、Dialog、以及String属于C类语言编译的,这是我们今天要针对的对象。还有一类是RCData的资源,属于Delphi类的,以后再谈。
现在我们可以逐个打开Menu、Dialog、String,可以看到各个资源的详细情况。



用同样方法打开其他的.DLL文件,如果没有资源部分的就不要管他。有资源部分的可以看看其中的资源是否需要修改。在本例中,含有需要汉化的资源的是Opera.exe、OMail32.dll、OpTree32.dll三个文件。资源判断的步骤到此为止。

★开始汉化
现在请准备今天我们的主刀手——Visual Localize,它是一个可同时支持翻译 16 和 32 位程序的汉化工具。 多字典模式的支持,可让您将多个字典文件加入到单一方案的字典文件,亦可将旧版本所翻译的字典套用到新版本上,如此便可节省许多汉化的时间。也可以自动翻译所有方案内任何相同的字串。而它所支援汉化的文件格式有 :EXE、DLL、DRV、OCX、CPL 等。可编辑资源包括有:字串、对话框、菜单。

Visual Localize 不管汉化什么,都是以「方案」作为汉化的基础。所以一开始,就必须先新建一个方案,运行Visual Localize(以下简称VL),在"文件"菜单中选"新建方案",或者使用工具栏图标


我们按照图中的顺序进行操作:
①设置方案名称——鼠标单击红色圈住的"..."按钮,指定保存路径以及名称。


②指定需要汉化的多个文件,同样是使用红色圆圈圈住的小按钮,显示所有符合要求的文件。

这里同样可以使用微软标准的多种选定方式:Ctrl+鼠标单击可以跳跃的选择多个文件;Shift+鼠标单击可以连续的选择多个文件。

③设定文件的原始语言,一般设定为英文;红色圆圈圈住的两个按钮:下拉按钮用来设定原始语言(一般选"英文"即可),"..."按钮设定原始文本在VL中显示所用的字体、字号。

④设定文件要翻译的语言与字体,操作方式同③,语言当然选"中文",字体、字号取决于你自己。

注意:「语言」这部分比较要注意,千万不可以选错,若你准备翻译的是英文软件,在原始语言就选「英语(美国)」,然后,目标语言当然就是选「简体中文(中国)」了。
最后的设置情况如下:


全部设置好后,按"确定"按钮,开始载入文件......稍候.....

出现左右窗口,列出文件在左侧窗口,要汉化的各个文件名称前面都有一个"+"符号,我们先操作opera.exe:鼠标单击该文件前面的"+"符号,出现所有的资源分类,我们先选择"字串表":


在这里我们可以看到两两对应的英文文字,其中第一行是原始对照文字(这是无法修改的),我们可以称其为"对照行",第二行文字就是准备翻译的内容,我们称其为"翻译行"。我们准备翻译第一句:"Cannot run ",鼠标单击可以进入"翻译行",输入翻译内容"无法运行":

OK,这一句内容就已经翻译完了。如果方案里面的所有文件都有同样的原始英文(视大小写是否匹配决定)的话,都会自动用现在的翻译内容进行翻译了。接下来就是一句一句的翻译了。
"字串表"翻译完,我们跟着翻译"菜单"内容"。同样也是鼠标单击"菜单"前面的"+",选中第一个菜单项目"IDR_COPYLINKS_MENU":


在这里比"字串表"翻译时多了下面一栏"模拟显示"窗口,同样我们在"翻译行"进行操作:将"Copy as &text"翻译为"复制为文本(&T)"(在这里&表示紧跟其后的字母就是该菜单内容的快捷键,汉化时一般将它放到文字的最后,并加以括号),翻译效果实时显示出来:


同样,逐句地将"菜单"翻译完毕。我们也可以用鼠标单击菜单模拟显示窗口的文字,程序自动定位到相应菜单文字的翻译行,这样翻译某个具体菜单文字很方便。

所有菜单翻译完毕后,我们再来看看"对话框"的情况:(选择操作与菜单等的相同)。我们将"Print"翻译为"打印",翻译后的效果马上显示在下面的窗口中。

依然是需要逐句翻译。
作完对话框的翻译,就要更改对话框的字体,对著「对话框」按一下鼠标右键,选「更改字体」。接著,把原本英文字型,改成你要的中文字型,一般都是用「宋体」、字体样式为 regular、大小为 9的设定值,这样的中文显示起来最工整,设定完后按「确定」。

用上述方法汉化其他exe,dll文件。这样一个软件的主要资源已经汉化完毕。

最后一步就是要将汉化好的内容写入到执行文件中从而生成一个全新的汉化程序:使用"文件"——"创建目标文件"或者使用工具栏上的小图标,跳出一个创建目标文件对话框:

最后确认一下目标语言设置、目标文件的保存路径等,轻轻地按一下左下角的"确定"按钮,VL将会逐一生成.exe、.dll等执行文件,将这些文件复制到原始目录下(比如"C:\Program Files\Opera"),试试运行一下新的软件,哈哈,终于看到中文啦!

由于目前大部分软件都是使用C语言类软件进行编程的,也就是说,基本上都包含上面提到的三种资源类型。因此,你会发现只要掌握好VL工具,你已经可以面对你所接触到的大部分外文软件了。下一讲,我会讲述一些Visual Localize高级使

分享到:
评论

相关推荐

    QM语言文件本地化软件QMpareV0.3.2汉化绿色特别版

    QMpare(QM 语言文件本地化软件) QMpare 是一款非常好用的 QT 编程语言编译的 QM 语言文件本地化软件,它界面简洁实用,可以直接打开 QM 文件并编辑其中的字符串,支持字符串的搜索、导出和导入,支持旧文件升级和从...

    软件本地化工具 Sisulizer Enterprise Edition 4.0 Build 374 中文免费.zip

    Sisulizer Enterprise Edition 是一款软件本地化(也就是中文汉化)以增加收入的工具。Sisulizer方便地为你的软件提供多种语言支持,三个步骤进行本地化:扫描应用程序和定位文本;使用Sisulizer可视化编辑工具翻译...

    radialix-软件本地化工具-使用教程.pdf

    radialix-软件本地化工具-使用教程.pdfradialix-软件本地化工具-使用教程.pdfradialix-软件本地化工具-使用教程.pdfradialix-软件本地化工具-使用教程.pdfradialix-软件本地化工具-使用教程.pdf

    软件本地化工具PASSOLO2013.08.08(Build130808)汉化版

    Passolo 是一款功能强大的软件本地化工具,它支持以 Visual C 、Borland C 及 Delphi 语言编写的软件(.exe、.dll、.ocx)的本地化。以往针对这两种不同语言编写的软件,我们大多是需要分别使用 Visual Localize 和 ...

    Sisulizer 4下载(软件本地化工具)

    一款可以帮助用户进行软件本地化处理的开发工具,这款软件能够直接将各种不同国家的外语软件汉化成中文软件。并且我们还可以通过Sisulizer 4免费版来获取到多种语言支持,从而让不同国家的用户都可以直接进行使用,...

    汉化软件sisulizer个人总结

    个人简单的对sisulizer本地化软件的功能,步骤的简单介绍

    Uedit32英语软件汉化

    Radialix是比较强大的软件本地化工具,支持以 VC++、Delphi、.Net 等语言编写的软件、以及 INI 格式文本文件的本地化。尤其是它具有非标资源的本地化功能、以及可以设置更多的资源属性。

    eXeScope_小巧但功能极其强大的本地化工具

    eXeScope_小巧但功能极其强大的本地化工具 汉化工具,可以替换资源,更换图标,可以修改菜单。

    DXperience 9.1.5 简体汉化,本地化,Skins(winform)使用见说明

    DXperience 9.1.5 简体汉化,本地化,Skins(winform)使用见说明

    Passolo软件汉化工具

    Passolo 是一款功著名的、功能强大的软件本地化工具。如果您想要专业或者业余此事汉化工作,那么你不得不试试这个工具。

    Sisulizer 4(软件汉化工具) v4.0.369 中文版.zip

    Sisulizer可广泛的应用于服务器数据库的本地化,提供多种语言支持,通过使用我们提供的命令行工具,用户可以在其软件开发过程中集成Sisulizer的功能。不仅支持汉化英文软件,也支持其他外语软件汉化成中文界面。也...

    详细教程教你自己搭建一个本地化图文视频生成网站(附源码)

    本教程分5个目录帮助大家学习搭建本地化Midjourney(Stable Diffusion) 目录: 1. 搭建自己的AI网站 2. 模型下载安装 3. 汉化插件下载安装 4. 生成模拟真人图片 4.1 生成模拟真人图片 4.2 不同风格图片生成 4.3 ...

    eXeScope650汉化版

    非常好用的老牌软件本地化工具,使用简单,适合大部分软件的菜单汉化或者本地化!

    强大程序汉化工具Sisulizer Enterprise Edition 4.0 Build 362破解版

    Sisulizer是一款软件本地化(也就是汉化工具)以增加收入的工具。Sisulizer方便地为你的软件提供多种语言支持,三个步骤进行本地化:扫描应用程序和定位文本;使用Sisulizer可视化编辑工具翻译文本;创建本地化软件...

    Restorator 2009 Bulid 1807 汉化版+单文件绿色版

    2、Restorator可用来软件本地化、自定义、设计改进。 3、Restorator 也是一个非常好的软件汉化工具,对 Delphi 和C程序的支持尤为突出。 界面介绍: 资源树: 将文件从windows资源管理器或文件浏览器中拖放到此区域...

    SDL Passolo 2015汉化工具简体中文版.rar

    SDL Passolo 2015是一款软件本地化翻译工具,能够本地化使用VC/VB/C /JAVA/DELPHI等程序编写的软件,支持多种数据库文件及脚本文件,软件界面设置简洁实用且性能稳定,即使是新用户不需要专门的学习也能够快速上手...

    Restorator 2007 汉化免注册免安装版

    Restorator可以用来作翻译、本地化、定制化、设计改进及开发。该软件有一个直观的用户界面,拥有完整的文档及示例和提示,并且可以通过讨论论坛及电子邮件进行技术支持。 本程序仅供学习使用,因用户使用本程序所...

    DXperience 6.3.6 简体中文本地化

    版本6.3.6。使用更简单,dll文件添加至工程即可实现汉化。 相当专业的汉化了,术语参考至Windows、Office、Visual Studio等专业大型软件和fosoyo的V6.2.4本地化 &lt;br/&gt;内附详细使用方法和例子。

    eXeScope破解汉化版

    是一款专业的编程软件,exescope 汉化版小巧但功能极其强大的本地化工具,exescope可以直接修改 VC++ 及 DELPHI 编制的 PE 格式文件的资源,包括菜单、对话框、字符串和位图等,也可与其它本地化工具配合使用。

    Sisulizer4Enterprise(软件汉化工具)v4.0.353中文绿色注册版

    另外该sisulizer方便地为你的软件提供多种语言支持,三个步骤进行本地化:扫描应用程序和定位文本;使用Sisulizer可视化编辑工具翻译文本;创建本地化软件版本。 sisulizer 4功能介绍 -用户只需

Global site tag (gtag.js) - Google Analytics