Uwp 正在构建的项目的处理器体系结构不匹配”;AMD64“;

Uwp 正在构建的项目的处理器体系结构不匹配”;AMD64“;,uwp,release-builds,Uwp,Release Builds,为我的UWP应用程序创建商店软件包时,我遇到以下错误: 项目的处理器体系结构不匹配 正在建设的“AMD64”和处理器架构的参考 “C:\user.nuget\packages\ksemenenko.googleanalytics\1.0.3.2\lib\UAP10\Plugin.googleanalytics.dll”, “x86”。这种不匹配可能会导致运行时失败。请考虑 通过更改项目的目标处理器体系结构 配置管理器,以便调整处理器架构 在项目和引用之间,或者依赖于 使用与目标应用程序匹配的处理

为我的UWP应用程序创建商店软件包时,我遇到以下错误:

项目的处理器体系结构不匹配 正在建设的“AMD64”和处理器架构的参考 “C:\user.nuget\packages\ksemenenko.googleanalytics\1.0.3.2\lib\UAP10\Plugin.googleanalytics.dll”, “x86”。这种不匹配可能会导致运行时失败。请考虑 通过更改项目的目标处理器体系结构 配置管理器,以便调整处理器架构 在项目和引用之间,或者依赖于 使用与目标应用程序匹配的处理器体系结构进行引用 项目的处理器架构

我已打开Configuration Manager,并确保配置与体系结构保持一致:ARM/ARM、x64/x64、x86/x86


有人知道如何为“AMD64”调整“项目和参考之间的处理器架构”吗?

问题在于您使用的第三方DLL。它的编译方式在x64进程中不起作用。您必须坚持使用x86,直到他们解决了这个问题。我看到你已经在他们的GitHub回购中打开了一个bug

如果使用ildasm查看nuget包中包含的DLL,您将看到以下提示:

.module Plugin.GoogleAnalytics.dll
// MVID: {A0116946-EA05-4F0C-8BE9-A44B1EEF77BD}
.imagebase 0x10000000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003       // WINDOWS_CUI
.corflags 0x00000003    //  ILONLY 32BITREQUIRED
// Image base: 0x07EF0000

是的。所以现在,您只能使用该库构建x86版本的应用程序,直到他们修复它为止。但是,x86版本应该在AMD64系统上运行。感谢Stefan提供的信息!还有一个问题:你指的是“我的AMD系统”,但根据系统设置,我运行的Macbook pro带有与Windows并行的英特尔处理器。AMD从何而来?我是说你的系统运行64位版本的Windows。关键是你的应用程序的32位编译版本(x86)也将在64位操作系统上运行。好的,再次感谢。我刚刚找到另一个谷歌uwp分析软件包,它可以正常工作。缺点是,我现在无法与uwp共享用于android和iOS应用程序的netstandard库。我对messagepack也有类似的问题。我想netstandard并不像我所希望的那样是x平台,至少UWP有一些限制。希望你能尽快从Ksemenko那里得到修复。同时,请将此标记为已回答,以便我们可以结束它。