如果我的 Winforms 应用程序的平台设置为 x86,SQLite 会无法运行吗?

问题描述

在准备将我的应用程序提交到 Microsoft Store 时获得的 ValidationResult 中(我的应用程序“通过警告”),我在报告的“包健全性测试”部分下得到了这个“失败”:>

enter image description here

我觉得这很令人困惑,因为它说“e_sqlite3.dll 仅适用于 arm 处理器类型”和“e_sqlite3.dll 仅适用于 x64 处理器类型”

“仅”这个词不应该排除该类型的多个语句吗?我说“我唯一的狗叫 Fido”和“我唯一的狗叫 Spot”有意义吗?

此外,在抱怨“e_sqlite3.dll 仅适用于 x64 处理器类型”之后,该消息“承认”了 ProcessorArchitecture 在这种情况下确实被声明为 x86。那么问题是什么?

我觉得奇怪的是,这被归类为测试的失败部分,但总体结果是我的应用通过了(尽管有警告)。

以下是此解决方案的 Configuration Manager 设置:

enter image description here

如果按原样部署应用程序会导致 sqlite 无法在某些用户的计算机上运行,​​我需要做什么?

更新

为了回答 Peter Torr 的问题,这里是项目中的 sqlite 参考:

enter image description here

我所有与 sqlite 相关的用法是:

using Microsoft.Data.sqlite;

...至于项目体系结构,这是配置管理器所说的,将解决方显示为 x86,将主项目显示为 Anycpu,将包项目显示为 x86:

enter image description here

这是我尝试将“mymaps”项目上的“Anycpu”更改为“x86”的地方,以便它全面使用x86(屏幕截图显示选择了x64,但我在捕获屏幕截图后选择了x86) :

enter image description here

当我选择 x86 和“确定”按钮时,它告诉我:

enter image description here

所以它不会让我将“Anycpu”更改为“x86”...?!?

解决方法

事实上,来自本地验证(local WACK)的消息并不完全准确。它们只是一个参考。更准确的验证结果仍取决于在线验证(online WACK)测试。现在您的应用已通过 Microsoft Store 的验证,您可以忽略来自本地 Windows 应用认证工具包的这些失败消息。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...