为什么复选框'Prefer 32位'在Visual Studio 2012中禁用

本文关键字:2012 Studio 32位 复选框 Prefer 为什么 Visual | 更新日期: 2023-09-27 18:13:24

我遇到了一种情况,我想将Prefer 32位设置为true。但在Visual Studio 2012中,它显示为禁用。不管我怎么做,它都不会被启用。

我读到任何CPUPrefer 32位是所有新项目的默认值。那么,我是否应该假设虽然它是禁用的,但它被设置为true?那么如何将其设置为Any CPU呢?

AnyCPU的真正含义在。net 4.5和Visual Studio 11以及Stack Overflow的许多其他帖子和问题中,它说:

总的来说,现在有五个选项用于/platform c#编译器切换:x86, Itanium, x64, anycpu和anycpu 32位首选

更重要的是,我有一些同事向我提到,过去那个复选框是启用的(也许他们错了?)。

为什么Prefer 32位复选框被禁用,我如何重新启用它?

我的处理器是64位的,我已经在Visual Studio 2012中应用了Update2。

为什么复选框'Prefer 32位'在Visual Studio 2012中禁用

假设您有一个可执行的项目,那么如果您将目标平台更改为。net 4.5,它应该是启用的。

如果有人在Visual Studio 2013(可能还有Visual Studio 2012)中遇到。net 4.5可执行文件:

我们通过将项目切换到。net 4.0然后再切换回。net 4.5(在项目属性的Build选项卡上)来解决这个问题。这将重新启用AnyCPU的"Prefer 32 bit"复选框。

如果您的项目是一个单元测试项目,这个设置也可以被禁用。事实证明,环境不是我的问题。我通过将Visual Studio测试运行器更改为将测试作为64位进程运行来运行测试。

在Visual Studio Community 2015中,我在Test菜单中发现了这个:
测试>测试设置>默认处理器架构> X64

以下是来自微软的更多信息:
https://msdn.microsoft.com/en-us/library/ee782531.aspx