如果应用程序是使用 'Any Cpu' 配置构建的,那么它会在 64 位 windows 上使用哪个 .net 框架(32 位或 64 位)

Which .net framework (32 or 64 bit) would an app use on a 64 bit windows if it was built with 'Any Cpu' config

我读到,如果我们使用 'any cpu' 配置构建一个 .net 应用程序,在 64 位 windows 上它将 运行 作为 64 位进程和 32 位进程在 32 位 OS 上。

如果这是真的,我猜在 64 位 OS 上,该应用程序将在 64 位 .net(Framework64) 下运行,而在 32 位 OS 上,该应用程序将 运行 在 32 位 .net 框架下。此应用程序需要 Microsoft Visual J# 2.0 和 Microsoft Report Viewer 2008,所以我很困惑应该安装这些先决条件的哪个版本。

Microsoft Visual J# 2.0 有 64 位可再发行组件,但据我所知,Microsoft Report Viewer 2008 没有。那么,如果我在 64 位计算机上安装 Microsoft Report Viewer 2008,该应用程序是否会加载失败?任何指示都会有很大帮助。

总结:怀疑 Report Viewer 2008 是否可以在 64 位上运行 windows,因为没有已知的 Report Viewer 2008 64 位下载。

您的应用程序 运行 尽可能作为 64 位进程,并在只有该模式可用时回退到 32 位。

那么,“任何 CPU 首选 32 位”和“x86”之间的区别仅在于:编译为 x86 的 .NET 应用程序将无法 运行 在 ARM Windows 系统,但“任何 CPU 首选 32 位”应用程序将 运行 成功。