43

我遇到了一种情况,我想将Prefer 32-bit设置为 true。但在 Visual Studio 2012 中,它显示为已禁用。而且无论我做什么,它都不会启用。

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

.NET 4.5 和 Visual Studio 11 的 AnyCPU 真正意味着什么以及 Stack Overflow 的许多其他帖子和问题中,它说:

总体而言,现在 /platform C# 编译器开关有五个选项:x86、Itanium、x64、anycpu 和 anycpu 32bit 首选

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

为什么首选 32 位复选框被禁用,如何再次启用它?

我的处理器是 64 位的,我已将 Update2 应用到 Visual Studio 2012。

4

3 回答 3

53

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

这是一个仅限 .NET 4.5 的东西,它只对可执行文件启用。

于 2013-05-14T15:17:53.440 回答
4

如果有人在 Visual Studio 2013(可能还有 Visual Studio 2012)中遇到 .NET 4.5 可执行文件时遇到这种情况:

我们通过将项目切换到 .NET 4.0 然后切换回 .NET 4.5(在项目属性的 Build 选项卡上)解决了这个问题。这重新启用了 AnyCPU 的“首选 32 位”复选框。

于 2014-01-31T15:46:39.330 回答
2

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

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

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

于 2018-08-27T04:47:26.693 回答