【问题标题】:Windows Phone 8.1 (WinRT) Localization Problems (MakePRI)Windows Phone 8.1 (WinRT) 本地化问题 (MakePRI)
【发布时间】:2015-02-17 22:15:31
【问题描述】:

我有一个关于 WinRT-Apps 本地化的问题。 据我所知,系统是这样工作的:

字符串 ||资源

  • de-DE
    • Resources.resw
  • zh-CN
    • Resources.resw
  • 等。
    • Resources.resw

到目前为止,我的项目中实现了这个文件夹结构。 在我的 Package.appxmanifest 中,"Default Language" 设置为 "en-US",所以一切都应该从我的角度来看,没关系,如果不支持语言,它应该回退到“en-US”,因为它设置在那里。 但是如果我编译这些东西,在 VS 的输出框中,我会收到来自 MakePRI 的警告

2>MakePRI : warning 0xdef01051: No default or neutral resource given for 'Resources/String'. The application may throw an exception for certain user configurations when retrieving the resources.

到目前为止,我只找到了与 MS 的广告 SDK 相关的东西,我没有在我的项目中使用,所以问题不应该存在。

为什么 MakePRI 给我这个消息,我错在哪里?

【问题讨论】:

    标签: c# localization windows-runtime windows-phone-8.1


    【解决方案1】:

    仅作记录:在构建 Windows 8.1 应用商店通用应用程序(Windows + Windows Phone)时,我也收到了同样的警告。我的项目包含一个带有图像的文件夹,这些图像用作地图上的精确标记。文件夹名称是

    • 资产/标记/yes/foo.png
    • 资产/标记/yes/bar.png
    • 资产/标记/yes/baz.png
    • ...
    • 资产/标记/no/foo.png
    • 资产/标记/no/bar.png
    • 资产/marker/no/baz.png
    • ...

    是/否子文件夹中的分隔是特定于应用程序的。我的程序使用标记来指示地图上某物的存在/不存在。

    对于 Assets/marker 下的每个元素,我收到了两次以下警告 - 一个用于 Windows 项目,另一个用于 Windows Phone 项目。

    MakePRI : 警告 0xdef01051: 没有为 ... 提供默认或中性资源

    根据MakerPRI documentation,资源索引系统尝试识别文件夹和文件名中的语言标识符。我认为警告的原因是文件夹名称“否”。 MakerPRI 将其解释为“挪威语”,并理所当然地抱怨我的项目包含可用一种语言但并非适用于所有语言的资源。

    我将文件夹名称“no”更改为其他名称,警告消失了。所以底线是应该小心可能被误解为语言标签的文件名和文件夹名。这是list of all available language tags

    【讨论】:

    • 我认为不可能小心文件名和文件夹名...我有类似的情况,但我的文件名是 compIt.png 它认为“它”是一种语言,真的很难避免。除了改文件名,你还有其他解决办法吗?
    【解决方案2】:

    此错误意味着您有一个名为“String”的本地化字符串,该字符串未在默认的“en-US\Resources.resw”文件中定义。 如果您查看“de-DE\Resources.resw”文件,您应该会找到该条目。如果不需要,您必须将其报告到默认文件或将其删除。

    您的非默认本地化文件中存在的所有字符串必须在默认语言文件中具有默认值。

    【讨论】:

    • 谢谢。在“ja-JP\Resources.resw”中找到“String”-Key。我刚刚从我现在移植到 WinRT 的旧 Silverlight 应用程序中复制了全部资源。好久没看这些文件了。 ^^
    猜你喜欢
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多