适用于平台的Windows 8.1 App认证失败

时间:2014-01-28 10:58:56

标签: dll windows-store-apps app-certification-kit processor-architecture appxmanifest

我的Windows应用商店应用适用于所有架构(x86,x64,arm),并在商店中发布。但是在构建应用程序包时(右键单击项目,存储,创建应用程序包)Windows 8.1认证工具包3.1 for Windows 8.1通过了所有测试,除了平台适当的文件测试:

  • 发现错误:平台适当的文件测试检测到以下错误:
    • 文件fmodexMetroL64.dll仅适用于x64处理器类型; AppX清单将'ProcessorArchitecture'声明为x86。
    • 文件fmodexMetroLarm.dll仅适用于arm处理器类型; AppX清单将'ProcessorArchitecture'声明为x86。
    • 文件fmodexMetro64.dll仅适用于x64处理器类型; AppX清单将'ProcessorArchitecture'声明为x86。
    • 文件fmodexMetroarm.dll仅适用于arm处理器类型; AppX清单将'ProcessorArchitecture'声明为x86。
  • 如何修复:确保二进制文件体系结构与AppX清单中指定的ProcessorArchitecture属性兼容。 http://go.microsoft.com/fwlink/?linkid=294935

这里的问题是我有每个架构的.dll文件,无论我尝试什么,它们都会被添加到任何架构构建中。我还没有找到如何告诉Visual Studio一些.dll应该只包含在特定的体系结构中,而不是其他的。

我的AppX清单根本没有声明任何文件,也没有声明任何“ProcessorArchitecture”。

我目前的丑陋解决方案,每次我想构建:

  1. 我从项目中删除.dll以获取错误的架构
  2. 我只为单一架构构建
  3. 我将之前删除的.dll重新插入项目
  4. 我想找到一种方法来避免这种痛苦。

2 个答案:

答案 0 :(得分:0)

试试这个解决方案: 打开菜单Project,然后Project properties。标签Build并为不同的Output path设置不同的Platform target值(路径)。

答案 1 :(得分:0)

我有同样的问题,这个解决方案对我有帮助:

打开项目,选择Solution,然后打开菜单Project并选择Properties。

  • 在属性页面内转至 - >配置属性。

在此页面上,您可以设置平台目标。