Visual Studio 2010/2012:32位还是64位?

时间:2013-02-15 18:48:48

标签: c# visual-studio-2010 visual-studio

我正在使用C#。如果我在Visual Studio 2010或2012中创建解决方案,我将获得默认配置Debug / Release和Platform“Any CPU”。我是在创建32位还是64位应用程序?

3 个答案:

答案 0 :(得分:8)

“任何CPU”都意味着它所说的内容:任何 CPU。

它将作为操作系统的原生位运行。

如果选中Prefer 32-bit,它将在x86-64平台上以x86身份运行 (但它仍然可以作为ARM运行)

答案 1 :(得分:5)

您正在创建一个.Net可执行文件,它可以在32位或64位上下文中的32位或64位计算机上运行。如果您使用非托管资源,这实际上非常重要!

例如,if you are compiling for AnyCPU but utilize a 32 bit DLL, your application will crash on 64-bit machines

答案 2 :(得分:3)

您必须注意,配置的平台设置实际上并未选择C#项目中的平台。这种混淆源于C ++集成在Visual Studio中,这是一个设置 的IDE。

相关设置由项目属性控制。 Project + Properties,Build选项卡,Platform target combobox。对于VS2010项目,默认为x86,VS2012项目的“首选32位”选项已打勾。您可以选择AnyCPU并取消EXE项目的Prefer 32位选项以获得64位进程。这意味着此设置不一定与您的配置的平台设置相匹配。这导致了伟大的混乱。