导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

如何本地化 Windows Phone 8 应用标题

2014/6/18

适用于:Windows Phone 8 和 Windows Phone Silverlight 8.1 | Windows Phone OS 7.1

可以根据 Windows Phone 8 支持的区域性和语言将应用标题本地化。应用标题既显示在应用列表中,也显示在应用“磁贴”上,如下所示。这两个位置都在应用本身之外。本地化应用标题是可选的。出于品牌原因,某些开发人员不愿意将应用标题本地化。

若要将显示在应用列表或应用“磁贴”上的应用标题本地化,必须为您的应用所面向的每种显示语言创建一个纯资源 DLL 和单独的多语言用户界面 (MUI) 文件。有关 Windows Phone 所支持显示语言的完整列表,请参见 Windows Phone 的区域性和语言支持。纯资源 DLL 必须包含用于应用标题和“磁贴”标题的非特定语言(默认语言)资源字符串(您的应用所支持的)。每一个 MUI 文件都需要包括用于将应用列表中的和“磁贴”上的应用标题本地化的资源字符串。

以下屏幕快照显示应用标题在应用列表和应用“磁贴”上下文中的使用位置。

应用列表中的标题:

固定到“开始”屏幕的应用“磁贴”上的标题:

App List With Localized TitleStart Screen with Localized Title

本主题包括以下部分。

在开始之前,确保已在您的计算机上安装以下软件:

  • Visual Studio 或 Microsoft Visual Studio Express 2012 for Windows Phone。.NET Framework 自动安装。

若要完成本主题中的过程,您需要 Windows Phone 项目。您可以使用现有项目,或者创建空的 Windows Phone 项目来测试这些过程。有关创建项目的更多信息,请参见如何为 Windows Phone 创建第一个应用

除了使用 Visual Studio 创建非特定语言资源项目,您也可以下载非特定语言资源项目。可以在 Visual Studio Express 2012 for Windows Phone 或 Visual Studio 中修改该项目。

下载:非特定语言资源项目

在这一系列过程中,您使用 Visual Studio 创建语言资源 DLL 项目,创建非特定语言资源字符串以及更新 DLL 项目以创建资源 DLL。之后,您使用该 DLL 项目创建更多的本地化资源。

重要说明重要说明:

Microsoft Visual Studio Express 2012 for Windows Phone 不支持创建语言资源 DLL 项目。您必须使用 Visual Studio 将非特定资源字符串添加至项目并创建资源 DLL。如果您没有 Visual Studio,您可以下载非特定语言资源项目,您可以使用 Visual Studio Express 2012 for Windows Phone 来修改它。有关下载的详细信息,请参见下载非特定语言资源项目部分。

每一个资源都包含可以显示为应用标题和应用“磁贴”标题的本地化字符串。Visual Studio 允许您创建可用于创建非特定语言资源 DLL 的项目。如果您没有 Visual Studio,您可以下载预生成的语言资源 DLL 项目,然后使用 Visual Studio Express 2012 for Windows Phone 修改它并创建资源 DLL 和 MUI 文件。

创建语言资源 DLL 项目

在您为应用标题创建非特定语言资源字符串之前,您必须使用 Visual Studio 创建 DLL 项目。

创建语言资源 DLL 项目

  1. “文件”菜单上选择“新建项目”

    此时将出现“新建项目”对话框。

  2. 在左窗格中,展开“已安装”、展开“模板”、展开 Visual C++,然后单击 Win32

  3. 在项目类型列表中,单击“Win32 项目”

  4. “名称”框中键入 AppResLib

  5. 单击“确定”。

    将显示 Win32 应用程序向导。

  6. 单击“下一步”。

  7. “应用程序类型”下,选择“DLL”

  8. “其他选项”下,选择“空项目”

  9. 同样,在“附加选项”下面,清理安全开发生命周期 (SDL) 检查复选框。

  10. 单击“完成”。

    新的 DLL 项目已创建完成并在 Visual Studio 中打开。

  11. “生成”菜单上,选择“生成解决方案”

创建非特定语言资源字符串

在 Visual Studio 中,您需将资源字符串表添加到包含您应用的非特定语言名称的 DLL 项目中。非特定语言资源字符串作为您的 Windows Phone 应用的默认字符串使用。而且,这些资源字符串将用作您的本地化应用标题字符串的模板。

为应用创建非特定语言资源字符串

  1. “解决方案资源管理器”中,选择名为 AppResLib 的 DLL 项目。

  2. “项目”菜单上,单击“添加资源”

    出现“添加资源”对话框。

  3. “添加资源”对话框的“资源类型”列表中,选择“字符串表”,然后单击“新建”

    将打开资源字符串表。

  4. 运用以下属性创建两个资源字符串。

    ID

    Caption

    AppTitle

    100

    非特定语言应用标题

    AppTileTitle

    200

    非特定语言“磁贴”标题

    AppTitle 字符串包含要在应用列表中显示的应用的非特定语言名称。AppTileTitle 字符串包含当固定到“开始”时,将在应用“磁贴”中显示的应用的非特定语言名称。

更新 DLL 项目

在 Visual Studio 中,您必须更新 AppResLib DLL 项目,以使之构建为纯资源 DLL。

更新 DLL 项目的步骤

  1. “标准”工具栏上,选择“解决方案配置”列表框中的“发布”

  2. “解决方案资源管理器”中右击 AppResLib DLL 项目,然后单击“属性”

    将显示“属性页”对话框。

  3. “属性页”对话框的左窗格中,展开“配置属性”,展开“链接器”,然后单击“高级”

  4. 选择“无入口点”属性,单击属性值右侧的下拉箭头,然后单击“是(/NOENTRY)”

    说明注意:

    /NOENTRY 可防止链接器将到 _main 的引用链接到 DLL 上;此选项为创建纯资源 DLL 时所需。

  5. 单击“确定”。

  6. “生成”菜单上,选择“生成解决方案”

  7. “解决方案资源管理器”中,右击解决方案(“解决方案 'AppResLib'”),然后单击“在文件资源管理器中打开文件夹”

    文件资源管理器显示项目文件。

  8. “文件资源管理器”中打开“发布”文件夹,定位您所构建的 AppResLib.dll 文件。

    说明注意:

    项目文件夹和解决方案文件夹均包含“发布”文件夹。AppResLib.dll 文件包含在解决方案的根的“发布”文件夹中。

  9. 将 AppResLib.dll 文件重命名为 AppResLibLangNeutral.dll。

    之后,您在您的本地化 Windows Phone 应用中使用该文件。

在这一系列过程中,您使用 Visual Studio 或 Visual Studio Express 2012 for Windows Phone 编辑非特定语言资源字符串表以包含本地化资源标题字符串。然后,您重新构建包含新的本地化标题字符串的 DLL 并重命名该 DLL 文件。

创建第一个特定语言资源字符串

在该过程中,您为英语(美国)创建本地化标题字符串。您必须使用现有的 DLL 项目,它或者是您在前一系列过程中通过 Visual Studio 创建的(请参见使用 Visual Studio 创建非特定语言资源 DLL),或者是您下载的(请参见下载非特定语言资源项目)。

为应用创建第一个特定语言资源字符串

  1. 如果 DLL 项目尚未打开,则在 Visual Studio 或 Visual Studio Express 2012 for Windows Phone 中打开。

  2. “解决方案资源管理器”中,展开“资源文件”文件夹。

  3. 右击 AppResLib.rc 资源,然后单击“查看代码”

  4. 通过更改资源字符串值来修改 AppResLib.rc 文件,如下所述:

    ID

    AppTitle

    enus 应用标题

    AppTileTitle

    enus 应用标题

    AppTitle 字符串包含要在应用列表中显示的应用的英语(美国)名称。AppTileTitle 字符串包含固定到“开始”屏幕上时要在应用“磁贴”中显示的应用的英语(美国)名称。

  5. “生成”菜单上,选择“生成解决方案”

  6. “解决方案资源管理器”中,右击“解决方案 'AppResLib'”,然后单击“在文件资源管理器中打开文件夹”

    “文件资源管理器”显示项目文件。

  7. “文件资源管理器”中打开“发布”文件夹,定位您所构建的最新的 AppResLib.dll 文件。

    说明注意:

    项目文件夹和解决方案文件夹均包含“发布”文件夹。AppResLib.dll 文件包含在解决方案的根的“发布”文件夹中。解决方案文件夹易于识别,因为它包含 AppResLib.sln 解决方案文件。

  8. 将 AppResLib.dll 文件重命名为 AppResLib.dll.0409.mui。

您所创建和重命名的 DLL 文件包含英语 (en-US) 英语标题和应用“磁贴”标题。之后,您在您的 Windows Phone 应用中使用该文件。您的 Windows Phone 应用根据代表了英语 (enus) 的 0409 LCID 值识别该文件。

创建附加语言资源字符串

您可以遵照上述步骤,创建更多的语言资源字符串和包含这些资源的 DLL。您要针对每一个本地化的资源字符串集,创建新的 DLL 并用 LCID 和 .mui 扩展名重命名它。

为应用创建其他语言资源字符串

  • 但是,重复以上步骤时,您必须为每一个区域设置提供本地化的 AppTitle 字符串值和 AppTileTitle 字符串值。您也必须使用下表中的信息为每一个区域设置重命名 DLL 文件。每一个 DLL 文件名称的格式都是 AppResLib.dll.[locale ID].mui

    说明注意:

    有关各 Windows Phone 版本所支持的显示语言的完整列表,请参见 Windows Phone 的区域性和语言支持

    Windows Phone 8 支持的显示语言

    区域性名称

    区域性代码

    DLL 文件名称

    阿尔巴尼亚语(阿尔巴尼亚)

    sq-AL

    AppResLib.dll.041c.mui

    阿拉伯语

    ar-SA

    AppResLib.dll.0401.mui

    阿塞拜疆语(拉丁语)

    az-Latn-AZ

    AppResLib.dll.042c.mui

    白俄罗斯语

    be-BY

    AppResLib.dll.0423.mui

    保加利亚语

    bg-BG

    AppResLib.dll.0402.mui

    加泰罗尼亚语

    ca-ES

    AppResLib.dll.0403.mui

    简体中文(中国)

    zh-CN

    AppResLib.dll.0804.mui

    繁体中文(台湾)

    zh-TW

    AppResLib.dll.0404.mui

    克罗地亚语

    hr-HR

    AppResLib.dll.041a.mui

    捷克语(捷克共和国)

    cs-CZ

    AppResLib.dll.0405.mui

    丹麦语(丹麦)

    da-DK

    AppResLib.dll.0406.mui

    荷兰语(荷兰)

    nl-NL

    AppResLib.dll.0413.mui

    英语(英国)

    en-GB

    AppResLib.dll.0809.mui

    英语(美国)

    en-US

    AppResLib.dll.0409.mui

    爱沙尼亚语

    et-EE

    AppResLib.dll.0425.mui

    菲律宾语

    fil-PH

    AppResLib.dll.0464.mui

    芬兰语(芬兰)

    fi-FI

    AppResLib.dll.040b.mui

    法语(法国)

    fr-FR

    AppResLib.dll.040c.mui

    德语(德国)

    de-DE

    AppResLib.dll.0407.mui

    希腊语(希腊)

    el-GR

    AppResLib.dll.0408.mui

    希伯来语

    he-IL

    AppResLib.dll.040d.mui

    印地语

    hi-IN

    AppResLib.dll.0439.mui

    匈牙利语(匈牙利)

    hu-HU

    AppResLib.dll.040e.mui

    印度尼西亚语(印度尼西亚)

    id-ID

    AppResLib.dll.0421.mui

    意大利语(意大利)

    it-IT

    AppResLib.dll.0410.mui

    日语(日本)

    ja-JP

    AppResLib.dll.0411.mui

    哈萨克语

    kk-KZ

    AppResLib.dll.043f.mui

    朝鲜语(韩国)

    ko-KR

    AppResLib.dll.0412.mui

    拉脱维亚语

    lv-LV

    AppResLib.dll.0426.mui

    立陶宛语

    lt-LT

    AppResLib.dll.0427.mui

    马其顿语

    mk-MK

    AppResLib.dll.042f.mui

    马来语(马来西亚)

    ms-MY

    AppResLib.dll.043e.mui

    挪威语(挪威)

    nb-NO

    AppResLib.dll.0414.mui

    波斯语

    fa-IR

    AppResLib.dll.0429.mui

    波兰语(波兰)

    pl-PL

    AppResLib.dll.0415.mui

    葡萄牙语(巴西)

    pt-BR

    AppResLib.dll.0416.mui

    葡萄牙语(葡萄牙)

    pt-PT

    AppResLib.dll.0816.mui

    罗马尼亚语

    ro-RO

    AppResLib.dll.0418.mui

    俄语(俄罗斯)

    ru-RU

    AppResLib.dll.0419.mui

    塞尔维亚语(拉丁语)

    sr-Latn-CS

    AppResLib.dll.081a.mui

    斯洛伐克语

    sk-SK

    AppResLib.dll.041b.mui

    斯洛文尼亚语

    sl-SI

    AppResLib.dll.0424.mui

    西班牙语(墨西哥)

    es-MX

    AppResLib.dll.080a.mui

    西班牙语(西班牙)

    es-ES

    AppResLib.dll.0c0a.mui

    瑞典语(瑞典)

    sv-SE

    AppResLib.dll.041d.mui

    泰语

    th-TH

    AppResLib.dll.041e.mui

    土耳其语

    tr-TR

    AppResLib.dll.041f.mui

    乌克兰语

    uk-UA

    AppResLib.dll.0422.mui

    乌兹别克语(拉丁语)

    uz-Latn-UZ

    AppResLib.dll.0443.mui

    越南语

    vi-VN

    AppResLib.dll.42a.mui

    Windows Phone 7.1 支持的显示语言

    区域性名称

    区域性代码

    DLL 文件名称

    简体中文(中国)

    zh-CN

    AppResLib.dll.0804.mui

    繁体中文(台湾)

    zh-TW

    AppResLib.dll.0404.mui

    捷克语(捷克共和国)

    cs-CZ

    AppResLib.dll.0405.mui

    丹麦语(丹麦)

    da-DK

    AppResLib.dll.0406.mui

    荷兰语(荷兰)

    nl-NL

    AppResLib.dll.0413.mui

    英语(英国)

    en-GB

    AppResLib.dll.0809.mui

    英语(美国)

    en-US

    AppResLib.dll.0409.mui

    芬兰语(芬兰)

    fi-FI

    AppResLib.dll.040b.mui

    法语(法国)

    fr-FR

    AppResLib.dll.040c.mui

    德语(德国)

    de-DE

    AppResLib.dll.0407.mui

    希腊语(希腊)

    el-GR

    AppResLib.dll.0408.mui

    匈牙利语(匈牙利)

    hu-HU

    AppResLib.dll.040e.mui

    印度尼西亚语(印度尼西亚)

    id-ID

    AppResLib.dll.0421.mui

    意大利语(意大利)

    it-IT

    AppResLib.dll.0410.mui

    日语(日本)

    ja-JP

    AppResLib.dll.0411.mui

    朝鲜语(韩国)

    ko-KR

    AppResLib.dll.0412.mui

    马来语(马来西亚)

    ms-MY

    AppResLib.dll.043e.mui

    挪威语(挪威)

    nb-NO

    AppResLib.dll.0414.mui

    波兰语(波兰)

    pl-PL

    AppResLib.dll.0415.mui

    葡萄牙语(巴西)

    pt-BR

    AppResLib.dll.0416.mui

    葡萄牙语(葡萄牙)

    pt-PT

    AppResLib.dll.0816.mui

    俄语(俄罗斯)

    ru-RU

    AppResLib.dll.0419.mui

    西班牙语(西班牙)

    es-ES

    AppResLib.dll.0c0a.mui

    瑞典语(瑞典)

    sv-SE

    AppResLib.dll.041d.mui

在下一过程中,您将 MUI 文件和非特定语言 DLL 文件复制到您的 Windows Phone 应用的根目录。

通过将本地化的 MUI 文件和非特定语言 DLL 文件添加到您的 Windows Phone 应用中,应用用户可以看到用他们为其 Windows Phone 所选定的 Windows Phone 语言显示的本地化应用标题和本地化应用“磁贴”标题。

在 Windows Phone 应用中使用本地化资源字符串

  1. 打开您现有的 Windows Phone 8 应用,或者在 Visual Studio 或 Visual Studio Express 2012 for Windows Phone 中创建 Windows Phone 8 应用。

  2. “解决方案资源管理器”中选择您的 Windows Phone 8 项目。

  3. “项目”菜单上,单击“添加”,然后单击“现有项”

    将出现“添加现有项”对话框。

  4. 找到并选择您在之前过程中创建的 AppResLibLangNeutral.dll 文件和所有的 AppResLib.dll.*.mui 文件,然后单击“添加”

    已将文件添加到 Windows Phone 项目的根中。

  5. “解决方案资源管理器”中,右击 AppResLibLangNeutral.dll 文件,将其重命名为以下名称:

    AppResLib.dll

  6. “解决方案资源管理器”中,选择导入的文件(AppResLib.dll 和 AppResLib.dll.*.mui)。

    “属性”窗口中,将“生成操作”属性设置为 Content

    说明注意:

    如果“属性”窗口未显示,则从“视图”菜单中选择“属性窗口”

  7. “解决方案资源管理器”中,将 AppResLib.dll.*.mui 文件移动到“资源”文件夹中。

  8. “解决方案资源管理器”中,展开“属性”,然后打开 WMAppManifest.xml 文件。

    显示 Windows Phone 应用清单设计器。

  9. 选择“应用程序 UI”选项卡(如果它未被选中)。

  10. “显示名称”设置为以下内容:

    @AppResLib.dll,-100

  11. “磁贴标题”设置为以下内容:

    @AppResLib.dll,-200

  12. 保存并生成 Windows Phone 应用。

Windows Phone 8 应用根据用户 Windows Phone 8 手机的语言和国家或地区设置,显示本地化应用标题和应用“磁贴”标题。包含在 .mui 文件中的 AppTitle 字符串和 AppTileTitle 字符串与用户 Windows Phone 8 手机的语言和国家或地区设置相对应。如果您不包括可以匹配所支持的特定区域设置的 .mui 文件,那么您的 Windows Phone 8 应用则使用包含在 AppResLib.dll 文件中的非特定语言 AppTitle 字符串和 AppTileTitle 字符串。

若要测试已本地化的应用标题,请按照如何测试 Windows Phone 的本地化应用中所列的步骤执行操作。

显示:
© 2014 Microsoft