前面提到的文章中描述了一个错误,即字符串资源在清单文件中的引用如下:
实际的引用是这样工作的(注意省略了
Resources/):在你的游戏中包含本地化的 Shell 视觉元素
开始打包时,你会有一个 MicrosoftGame.config 文件,其中包含类似以下部分,用于指定要显示的属性中包含的文本内容:OverrideDisplayName="My Game's Display Name"。
- 创建一个名为 resources.resw 的 XML 文件,并将其放置在项目的 Strings 子文件夹中。这将作为项目的语言中立回退。
- 对于每种语言,为项目创建一个新的 Strings 子文件夹。例如,Strings\en-us 用于英语,或 Strings\es-mx 用于墨西哥西班牙语。确保对每种语言使用适当的 BCP-47 代码。
- 在每个 XML 文件中,添加以下内容,其中突出显示的文本被替换为你应用程序的适当文本(以适当的语言)。以下示例说明了使用
(English)作为简单后缀。
ms-resource:ResourceStringName 语法引用这些资源字符串,如下面在 OverrideDisplayName 和 Description 属性中所示。
Game 的子元素。
- 在游戏的根内容目录中打开 Microsoft Game Development Kit (GDK) gaming command prompt。
- 运行以下命令:
makepkg localize。
- 使用
/resw指定相对根目录的路径以查找 .resw 文件。 - 使用
/pd加目录路径可将生成的 Resources.pri 文件存储到默认根目录以外的位置。目标目录必须已存在。 - 使用
/t加目录名可指定将资源导出到 XML 文件的位置,可手动验证以确保它包含适当的资源。
