1

我在2台计算机上安装了VS.NET 10.0.40219.1 SP1,当我创建一个新的C#Winform应用程序时,只能通过Properties/Build/Platform x86来完成,目标让我选择AnyCpu/x64,但无法设置它在配置中(但是,库工作正常)。VS只为x86配置创建winforms应用程序,为什么?

如果我尝试手动更改它在项目文件中,我会得到很多讨厌的错误。这是正常行为,是我的安装中的错误还是问题?

Pd积:当我手动更改项目,这happend:

警告1 OutputPath属性未设置项目 '*的.csproj'。 请检查以确保您已为该项目指定了配置和平台的有效组合 。配置='调试' 平台='x86'。如果某个其他项目是 试图按照此项目的项目对项目引用,此012xx项目已被卸载或未包含在解决方案中,并且 引用项目不使用相同的或等效的 配置或 平台。 C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \ Microsoft.Common.targets

当我重新打开该项目,所有引用无效

+2

很不清楚。什么是“讨厌的错误”? – 2012-07-13 20:52:03

回答

1

这是正常的Visual Studio创建的WinForms只有x86平台的项目。我不知道这是因为历史上x86是唯一的平台类型还是因为x86是最常用的值或其他原因。

当手动修改项目文件时出现问题也是正常的,尽量避免在可能的情况下这样做。

要在C#项目

  1. 选择Build创建另一个平台配置|配置管理
  2. 选择<新建... >在活动解决方案平台领域
  3. 选择要
  4. 点击OK
0

Visual Studio中默认情况下用于创建AnyCPU应用的新类型。我认为VS2005和VS2008都是这样做的,尽管他们可能已经改变了VS2008。发生了什么事情:很多AnyCPU应用程序在64位系统上崩溃,因为它们是依赖于32位库构建的。如果你试图运行一个在64位系统上有32位依赖的AnyCPU应用程序,你会得到一个64位进程,只要它试图加载你的32位DLL就会崩溃。

要解决此问题,默认情况已更改为使用x86选项。如果你想使用AnyCPU,你现在必须为它设置环境。

相关问题