为商店构建通用应用程序时出错:"Manifest references file 'MyAppName.dll' which is not part of the payload."

Error when building universal app for the store: "Manifest references file 'MyAppName.dll' which is not part of the payload."

我在 Visual Studio 2015 年尝试为 windows 通用应用程序的商店创建应用程序包时遇到此错误:

Manifest references file 'MyAppName.dll' which is not part of the payload.

错误在 ...\..MyAppSourcePath..\Package.appxmanifest 文件中。

这在某种程度上是相关的 Manifest references file 'Bing.Maps.dll' which is not part of the payload 但在我的例子中,错误仅在为商店构建包时出现并且与 MyAppName.dll 相关(其中 MyAppName 是我的应用程序的名称)。

MSDN 中的另一个相关问题:https://social.msdn.microsoft.com/Forums/en-US/f137091e-f550-4eab-b7e2-418149b97d40/error-appx0703-manifest-references-file-myappnamedll-which-is-not-part-of-the-payload?forum=windowsstore

事实证明这是 Windows 10 SDK(更新 1.1)中的已知问题。参考:https://social.msdn.microsoft.com/Forums/en-US/73f2d56d-9e8e-4b57-bcfa-0a972dfd75d7/update-11-generating-store-associated-package-fails-for-a-uwp-application-with-a-winrt-component?forum=Win10SDKToolsIssues

要解决此问题,请在您的项目文件中添加以下 ItemGroup 并重新生成包。

<ItemGroup>
    <AppxSystemBinary Include="<Assembly Mentioned in the error>" />
</ItemGroup>

例如,如果程序集名称是 MyAppName.dll,则包括:

<ItemGroup>
    <AppxSystemBinary Include="MyAppName.dll" />
</ItemGroup>

这个ItemGroup如果其他程序集仍然报错可以展开,例如:

<ItemGroup>
    <AppxSystemBinary Include="MyAppName.dll" />
    <AppxSystemBinary Include="OtherAssembly.dll" />
</ItemGroup>

2015 年 10 月 5 日发布了 Visual Studio 通用 Windows 应用工具 (v1.1.1) 的错误修复。此更新要求您已经安装了 UWP 工具 v1.1 .您可以通过从 Visual Studio 的帮助菜单中打开 关于 Microsoft Visual Studio 来确定您是否安装了 UWP 工具 1.1。如果您安装了“Visual Studio Tools for Universal Windows Apps 14.0.23309.00”,那么您就拥有了 UWP 工具 1.1.

安装此更新

  • 您必须在整个设置过程中连接到互联网。

  • 对于没有Visual Studio

    的机器
  • 对于安装了 UWP Tools 1.1 的机器

  • 对于没有安装 UWP Tools 1.1 的机器

    • 对于 Visual Studio 2015 Community、Professional 和 Enterprise,您可以通过

      安装
      • 正在修改您的设置以安装更新的工具。

      • 单击“通知”窗格中的 UWP 工具条目。

      • 使用“扩展和更新”对话框更新 Visual Studio。

      • 运行 在 https://dev.windows.com/downloads 处安装安装程序,这会将更新的工具添加到现有的 Visual Studio 安装中。

    • For Visual Studio 2015 Express for Windows

为确认您已安装 UWP 工具 1.1.1 更新,

  1. 转到 Windows 控制面板中的程序和功能,然后单击查看已安装的更新。

  2. 查找“Microsoft Visual Studio 2015 更新 (KB3073097)”,版本 14.0.23315

来源:https://social.msdn.microsoft.com/Forums/en-US/73f2d56d-9e8e-4b57-bcfa-0a972dfd75d7/update-11-generating-store-associated-package-fails-for-a-uwp-application-with-a-winrt-component?forum=Win10SDKToolsIssues

我花了很多时间尝试解决这个问题,这与 OP 发布的问题略有不同,但希望这能帮助其他人,因为我在 Whosebug 上找不到答案,但最终找到了它此处:https://social.msdn.microsoft.com/Forums/Sharepoint/en-US/65bc5999-662c-4eda-9967-e1b3031db8c4/error-appx0703-error-manifest-references-file-assetssplashscreenpng-which-is-not-part-of-the?forum=wpdevelop 经过数小时的折腾和尝试不同的事情。

我的错误是一样的,除了文件是针对各种商店和磁贴图像文件的:"Manifest references file 'Assets\Store\StoreLogo.png' which is not part of the payload."

所有文件确实存在,但结果是我 运行ning Visual Studio 在使用 Parallels 的虚拟机上,项目通过共享文件夹打开并使用 UNC 路径。 运行 来自映射驱动器的项目,构建一切顺利。

我现在意识到在 Parallels Desktop 中使用 VM 引用 UNC 路径在过去给我带来了一些问题。所以只需要记住,事情应该通过映射驱动器 运行 来避免这种情况。