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,你現在必須爲它設置環境。

相關問題