Search code examples
sqliteuwpwindows-storedesktop-bridgemicrosoft.data.sqlite

Will SQLite fail to run if the Platform of my Winforms app is set to x86?


In the ValidationResult that I get when readying my app for submission to the Microsoft Store (which my app "PASSED WITH WARNINGS") , I got this "Fail" under the "Package Sanity Test" section of the report:

enter image description here

I find this confusing, as it says both that "e_sqlite3.dll is designed only for arm processor type" AND that "e_sqlite3.dll is designed only for x64 processor type"

Shouldn't the word "only" preclude multiple statements of that type? Would it make sense for me to say, "My only dog is named Fido" AND "My only dog is named Spot"?

And besides, after complaining that "e_sqlite3.dll is designed only for x64 processor type," the message "admits" that ProcessorArchitecture is, indeed, declared as being x86 in that case. So what's the problem?

I find it odd that this is classified as a failed part of the test, yet the overall results are that my app passed (albeit with warnings).

Here are the Configuration Manager settings for this solution:

enter image description here

What do I need to do, if deploying the app as-is will cause SQLite to not run on some users' machines?

UPDATE

To answer Peter Torr's questions, here are the SQLite references in the project:

enter image description here

All of my SQLite-related usings are:

using Microsoft.Data.Sqlite;

...and as to the project architecture, here is what Configuration Manager says, showing the solution as x86, the main project as AnyCPU, and the Package project as x86:

enter image description here

This is where I try to change the "AnyCPU" to "x86" on the "MyMaps" project so that it is x86 across the board (the screen shot shows x64 selected, but I selected x86 after capturing the screen shot):

enter image description here

When I then select x86 and the "OK" button it tells me this:

enter image description here

So it won't let me change the "AnyCPU" to "x86"...?!?


Solution

  • In fact, the messages from local validation(local WACK) are not completely accurate. They are just a reference. A more accurate verification result still depends on the online validation(online WACK) test. Now that your app has passed the validation of Microsoft Store, you could ignore these FAILED messages from local Windows App Certification Kit.