uwprelease-builds

There was a mismatch between the processor architecture of the project being built "AMD64"


I am getting the following error when creating a store package for my UWP app:

There was a mismatch between the processor architecture of the project being built "AMD64" and the processor architecture of the reference "C:\user.nuget\packages\ksemenenko.googleanalytics\1.0.3.2\lib\UAP10\Plugin.GoogleAnalytics.dll", "x86". This mismatch may cause runtime failures. Please consider changing the targeted processor architecture of your project through the Configuration Manager so as to align the processor architectures between your project and references, or take a dependency on references with a processor architecture that matches the targeted processor architecture of your project.

I have opened the Configuration Manager and made sure the configs are aligned with the architectures: ARM/ARM, x64/x64, x86/x86.

Does anybody know how to "align the processor architectures between your project and references" for "AMD64"?


Solution

  • The problem is in the 3rd party DLL you are consuming. The way it's compiled won't work in an x64 process. You have to stick with x86 until they have fixed this. I see you have already opened a bug in their GitHub repo.

    If you take a look with ildasm at the DLL included in the nuget package you will see this hint:

    .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