不要使用区域设置ID

时间:2013-11-21 10:19:48

标签: delphi localization

我使用Windows 7(俄语本地化)在Delphi 2010中开发我的项目。

当我开始使用Windows 8(英语)并将我的项目移至Delphi XE3时,我看到了英语的标准对话框(如按钮,MessageDlg标题和系统错误)(必须是俄语)。

查看项目 - 选项 - 版本信息 - 语言,并在“调试配置--32位Windows平台”中将区域设置ID视为“英语(美国)”。

查看其他配置,并看到三个标题,如“所有配置 - 所有平台”(禁用所有元素)

区域设置ID为“俄语(俄罗斯)”,并且在所有字幕“32位Windows平台”中,区域设置ID为“英语(美国)”。

好的,我将所有配置区域设置ID更改为“俄罗斯(俄罗斯)”。但它不起作用 - 所有英文信息。在建造的exe文件属性语言=俄罗斯(俄罗斯)。 在Windows 7,Vista上进行了俄语本地化测试。

2 个答案:

答案 0 :(得分:2)

版本信息中的区域设置ID与标准对话框使用的语言无关。您甚至可以在不同语言环境的版本信息中包含多个条目。

标准对话框使用的语言取决于当前Windows用户的语言设置。对于在此用户帐户下启动的所有应用程序,它都是相同的,并且与应用程序本身内部使用的语言无关。

答案 1 :(得分:0)

Delphi源代码中有consts.pas / consts.dcu单元,它包含标准对话框的所有翻译。您可以复制此文件并将其添加到项目中。您可以进行更改并构建项目。 确保原始的consts.pas / consts.dcu不可用(重命名/移动它们)。