Delphi程序设计中系统提示信息的汉化

对广大的编程爱好者来说,最尴尬的事莫过于在执行自己编写的中文软件时却弹出一条英文的提示信息。本文介绍一种快速简便的方法,对Delphi中的系统提示信息进行汉化。

  在Delphi中,定义系统资源字符串常量的源文件(.pas)都放在了Delphi安装目录的/Source目录下,并按其类别分布在几个子目录中,而其编译后的单元文件(.dcu)则全部放在Delphi安装目录的/Lib目录中,系统编译链接应用程序时会自动从这些单元文件中找到所需的字符串常量将其替换。因此,我们只要将/Source目录下的源文件中的提示信息字符串汉化后,编译成单元文件,再将该单元文件拷贝到/Lib目录中,覆盖原先的单元文件就可以达到汉化的目的。我们需要汉化某条提示信息时,找到包含该提示信息的源文件,将该提示信息字符串汉化就可以了。

  首先,在Delphi中建立一个新的项目,该项目中会自动包含一个名为Unit1的窗体文件,将其从项目中移去。然后从菜单中选择ProjectOptions,在弹出的Project Options对话框中,选择Directories/Conditionals标签,其中的Unit output directory文本框可以指定项目编译后单元文件的存放路径,在这里填上/Lib目录的完整路径,在笔者的系统中该路径为C:/Program Files/Borland/Delphi5/lib。最后将该项目文件存盘,并取名为HanHua.dpr。至此,这个用于汉化的项目文件就建立起来了,那么,怎么利用这个项目文件开始工作呢?下面,我就用一个实例来说明其使用的方法。

  在用Delphi编制某应用软件时,软件编译后,在运行时出现提示信息“Delete record?”,其汉化的步骤如下:

  1.Delphi中打开项目文件HanHua.dpr

  2.选择菜单SearchFind in Files,在弹出的对话框中,在Text to find:文本框里输入要查找的文本,在这里我们输入“Delete record?”,然后在Where组件框里选中Search in directories,并在Search Directory Options中输入/Source目录的完整路径,在我的系统中该路径为C:/Program Files/Borland/Delphi5/Source,最后别忘了将Include subdirectories选中,单击“OK”按钮开始查找。

  3.在代码编辑器底部会新增一个窗口,显示出所有包含你所要查找的文本的文件,在这个例子中,只找到一个文件,显示“C:/Program Files/Borland/Delphi5/Source/Vcl/dbconsts.pas(100):SDeleteRecordQuestion=''Delete record?'';”,双击可以打开该文件,系统会自动将光标移到“Delete record?”前面,将其改为“删除记录?”。

  4.选择菜单ProjectAdd to Project,在弹出的对话框中,系统会自动将当前打开的文件(这里为dbconsts.pas)作为默认打开文件,可以直接单击“打开”按钮将其添加到项目中。

  5.编译项目HanHua.dpr

  最后,我们只要把前面的应用软件重新编译一次,其提示信息“Delete record?”就变成了“删除记录?”。怎么样,用这种方法进行汉化是不是又快又准?不过,因为我们是直接在系统目录中对源文件进行修改,有两个方面还存在一点问题,其一,如果在修改过程中出现错误,就找不到可以参照的源文件了;其二,重装Delphi后,所有的汉化结果就全部没有了。所以我们还需要对上面的汉化过程作一点改进,其实,我们只要在上面第3步和第4步之间增加下面这个步骤就可以了:

  选择菜单FileSave As,在弹出的对话框中,将文件换名存盘到别的目录中。

在增加上面这个步骤后,前面提到的两个问题都得到了解决:系统源文件没有被修改,修改后的文件都放在了我们自己的目录中;重装Delphi后,只要重新编译项目HanHua.dpr就可以将以前汉化过的系统提示信息重新汉化。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件介绍 Radialix 是一款功能比较强大的软件本地化工具,支持以 VC++、Delphi、.Net 等语言编写的软件、以及 INI 格式文本文件的本地化。尤其是它具有非标资源的本地化功能、以及可以设置更多的资源属性。以下是开发商的描述。 - PE32、PE32+ 文件、.NET 程序集,资源和各类文本文件的本地化 - 加载子程序集的 .NET 程序集的本地化 - 非标(硬编码)字符串的本地化 - IDA 插件 - Unicode 支持 - 自动翻译、包括模糊翻译 - 机器翻译 - 翻译验证检查 - 对话框、窗体和菜单的所见即所得可视化编辑 - 导出和导入 CSV、TMX 和 TXT 文件 - 翻译记忆编辑器 - XML 格式的方案文件 ☆开发商更新 ======================================================== 版本 2.10.02.2661 ==================== + 增加了 XLS 文件的导入及导出 (Microsoft Excel 97+)。 + 在导入语言列表添加了 选项。 + 增加了导出选项“排序数据”、“跳过重复”、“删除加速器字符(&)”和“删除快捷键 (\t)” + 在统计信息面板上增加了“文件”字段,它显示选定文件数。 + 更改了命令行选项 –ec 和 –et 的语法。现在它们可以包含参数 : –ec[:] -et [:] + 增加了白俄罗斯语用户界面。 - 修正了“无法反序列化 system.object”的缺陷(.NET)。 - 修正了不正确的 BITMAP 显示格式,如果它使用 16 位颜色。 - 修正了含某些 16 位颜色格式的 ImageList 对象的不正确创建 (VCL, .NET)。 - 修正了在本地化程序集保存了错误的模块属性的缺陷 (.NET)。 - 修正了 METADATA 资源为“只读”时,有时创建了不正确的本地化程序集的缺陷 (.NET)。 - 修正了关闭方案时有时会出现的“访问冲突”,如果方案包含文本文件模板。 - 修正了在窗体设计器的“访问冲突”,如果原始文件是一个资源库。 - 修正了单击翻译记忆编辑器标题后出现的“访问冲突”。 - 修正了创建快捷键后出现的“列表索引超出范围”,如果方案包含多种目标语言。 - 一些次要的修正。 ☆与原版比较: ======================================================== - 选用 MSI 安装程序(原版 Inno Setup) - 已安装原版的话,将提示卸载原版,并安装本版本 - 将拼写检查用词典和发布程序功能单独列出,以供用户选择安装 - 自动检测并判断 IDA 插件的默认安装位置和状态(只对 IDA 专业版 5.2 及以上的安装版有效) - 增加了未安装 IDA 情况下的可自定义 IDA 插件安装位置对话框 - 增加了发布程序的简体文语言文件 - 提供卸载时删除 Radialix 2 用户注册表数据和共享文档的 Radialix 2 文件夹的选项 - 添加了“汉化新世纪”和“汉化说明”的文本文档 - 增加了汉化版更新的检测、下载和安装等自动更新功能 - 在升级安装状态下屏蔽了开始菜单选择对话框和安装位置浏览按钮 - 增加了 VBS 脚本引擎的运行环境及注册(自动监测) - 增加了简体文语言文件,并删除了英语以外的所有其他语言文件 - 添加了 19 个自定义文本文件模板 ☆美不足: ======================================================== - 错误报告的程序界面没有汉化(内容提供给开发商看的,所以不用汉化) - 由于是未脱壳汉化非标部分没有办法汉化,可能存在部分英文字串 ☆使用说明: ======================================================== - 本汉化软件不需要先安装原英文文件。 - 安装程序没有任何捆绑,请放心使用。 - 该汉化软件已在 Windows XP/2003/Vista 测试通过。
一篇文件:跟我学汉化汉化工具 『汉化工具简介』   软件汉化就是使用专门工具对外文版的软件资源进行读取、翻译、修改、回写等一系列处理,使软件的菜单、对话框、提示等用户界面显示为文,而程序的内核和功能保持不变的过程,完整的汉化大致要经过侦壳、脱壳、预处理、翻译、编译、测试、修正、发布8个步骤。这里的专门工具就是狭义上的汉化工具,特指标准资源和非标资源汉化工具,如Passolo、Sisulizer、点睛字符替换器等。广义上的汉化工具指汉化流程用到的各类工具软件,可谓五花八门。   熟练应用各类的汉化工具是汉化人学习汉化的基本技能之一。汉化工具选用原则大体上如下:   1).根据使用目的有针对性地选用工具;   2).最好带字典功能,提高汉化翻译效率;   3).同类工具软件,由个人使用习惯选择使用。 『学习任务』   实训目标:请将列出下面汉化工具的主要用途及特点(乱序排列)   (1)Radialix (2)UltraEdit (3)Athena-A (4)Resscope (5)UPXShell   (6)NSIS (7)StringManager (8)Passlo (9)AutoFontSet (10)Sisulizer   (11)灵便汉化编辑器 (12)VBLocalize (13)FreeRes (14)PE-scan (15)DictionaryHelper   (16)ExeinfoPE (17)点睛字符替换器 (18)ResHacker (19)INNO setup (20)Fantasy Editor   (21)PEiD (22)CodeFusion (23)UniversalExtractor (25)ImportREC   (26)PatchMaker (27)FixRes (28)GetVBRes (29)CXA (30)ArmaG3ddon 『参考答案』 显示被隐藏内容 显示被隐藏内容   (1)Radialix-主汉化工具,可以汉化标准资源和非标资源,但目前稳定性有待完善;   (2)UltraEdit -16 进制编辑器,用于非标汉化辅助工具;   (3)Athena-A -海子开发的非标汉化工具,特色是具有挪移字符串和字典提取等功能。   (4)Resscope -标准资源辅助工具,用于标准资源后期修正;   (5)UPXShell -UPX 加壳与脱壳工具;   (6)NSIS -安装包制作工具;   (7)StringManager -非标汉化工具;   (8)Passlo -主汉化工具,汉化标准资源,特点是拥有强大的自定义解析规则;   (9)AutoFontSet -非标字串字体修改工具   (10)Sisulizer -主汉化工具,汉化软件标准资源   (11)灵便汉化编辑器 - 非标汉化辅助工具,与点睛字符替换器是个经典的组合;   (12)VBLocalize -VB 汉化主程序,可以汉化VB的标准资源和非标字串;   (13)FreeRes -资源处理工具,强制释放软件可编辑的资源;   (14)PE-scan -侦/脱壳工具,可以脱一下常见的壳(低版本);   (15)DictionaryHelper -字典转换工具,支持常见几种工具的字典文件互相转换;   (16)ExeinfoPE -侦壳工具   (17)点睛字符替换器 -非标字串主汉化工具,可以与灵便汉化编辑器配合使用;   (18)ResHacker -资源查看、修改、反编译软件,标准资源汉化辅助工具,但不支持Delphi程序;   (19)INNO setup -安装包制作工具,功能强大;   (20)Fantasy Editor -字典转换工具,支持多种字典文件互相转换;   (21)PEiD -最常用的侦壳工具   (22)CodeFusion -补丁制作工具   (23)UniversalExtractor -万能解包工具   (25)ImportREC -导入表修复工具,用于软件汉化资源修复;    (26)PatchMaker -补丁制作工具   (27)FixRes -资源处理工具   (28)GetVBRes -VB 标准资源汉化工具   (29)CXA -非标资源主汉化工具,与点睛功能相似,各有所长;   (30)ArmaG3ddon -穿山甲壳的自动脱壳工具;
Delphi程序设计实战训练是一种实践性极强的学习方法,它通过让学生亲自动手解决真实的问题来提高其Delphi程序设计能力。 在Delphi程序设计实战训练,学生将直接面对各种实际问题,从需求分析到程序设计、编码、调试和优化等环节都需要自己亲自完成。通过这种方式,学生能够更深入地理解和掌握Delphi程序设计的各种技巧和方法。 Delphi程序设计实战训练的好处有很多。首先,它能够帮助学生将理论知识与实际需求相结合,培养学生解决实际问题的能力。其次,通过实际操作,学生能够更好地理解和记忆所学的知识点,提高学习效果。另外,Delphi程序设计实战训练还能够培养学生的团队协作能力和创新意识,在项目与他人合作,解决问题,产生创新的解决方案。 在Delphi程序设计实战训练,学生需要掌握Delphi开发环境的使用,了解Delphi的语法和常用控件,同时还需要学习项目管理和团队合作等技能。在实训过程,学生会遇到各种问题和挑战,需要分析问题、调试程序、修改代码等,这些都是提高编程技能和解决问题能力的良好锻炼。 总的来说,Delphi程序设计实战训练对于学生来说是一种非常有效的学习方法。通过实践动手解决实际问题,能够帮助学生更好地理解和掌握Delphi程序设计的知识和技巧,培养解决问题的能力和创新意识。同时,通过与他人的合作与交流,还能提高学生的团队协作能力。因此,Delphi程序设计实战训练是学习Delphi编程的重要一环。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值