2013-07-26 48 views
20

的配置和平臺使用:的Visual Studio 2012專業版和旗艦版的所有最新更新的Visual Studio:如何正確地構建並指定x64和x86

如何正確指定配置和平臺,以正確構建x86和64。

Visual Studio,當您第一次創建Winforms應用程序時,將爲您提供兩種配置,調試和發佈,並將AnyCPU定義爲平臺。

如果你只是針對一個平臺,那麼答案很簡單,你去Build | Configuration Manager並選擇其中一個平臺,然後進入項目屬性的構建頁面並選擇相同的平臺(x86或x64),然後瞧!你有風(說你要86)

/bin/x86/Debug 
/bin/x86/Release 

我有一個應用程序和多依賴項目(DLL組件)的解決方案。

由於VS配置管理器的頂部,配置和平臺有兩個下拉列表,然後在項目級別的其他配置和平臺,我做了以下內容:

(進一步打字之前,我想整個安裝吮吸,但...)

我創建了兩個新的配置Debug64和Release64使用最高的下拉列表和選定混合平臺的平臺。

我所選擇的每個輪流四個主要的解決方案配置的,然後設置項目級別的配置和項目水平平臺相匹配,所以:

Debug64 === Debug64, x64 
Release64 === Release64, x64 
Debug === Debug, x86 
Release === Release, x86 

我然後進入項目屬性(Alt + Enter鍵)構建頁面,忽略平臺並依次選擇每個配置,然後設置目標處理器以匹配。我改變了輸出爲以下幾點:

Debug64: /bin/x64/Debug 
Release64: /bin/x64/Release 
Debug: /bin/x86/Debug 
Release: /bin/x86/Release 

默認情況下,Visual Studio中使用頂部平臺設置文件夾並配置名稱設置輸出的最後一部分。如果我保存並關閉項目屬性,那麼一切似乎都很好。我可以建立,並與適當的文件夾結束。

問題出現了,當我在Visual Studio工具欄上切換解決方案配置時。項目屬性構建頁面默認恢復到它想要的狀態,即,對於這兩個調試和/或類似的版本,都可以使用/ bin/x64/Debug64。

是什麼原因促使我寫這個問題,設計師會很困惑,找不到相應的庫。

我想從Visual Studio解決方案配置下拉列表,我希望的目標(調試64位,64位版本,調試的x86,x86的版本)中選擇,並將它打造。

我如何做到這一點?我究竟做錯了什麼?

創建只有兩個解決方案配置,調試和發佈,是不行的,因爲沒有解決方案平臺下拉列表,然後針對所有分項目。 Visual Studio中了,在我看來,太多的配置部分和平臺部分。也許我只是想念一些東西。

回答

15

對於後人,這裏就是答案。這聽起來很明顯,但它不是我的,所以...

注意:創建Debug64和Release64是我付出的錯誤。我不僅必須刪除解決方案中提供的Debug64和Release64(在Configuration Manager中),而且必須爲每個項目(也在配置管理器中,僅在表部分中)刪除自動生成的Debug64和Release64。這花了一段時間。

  1. 確保您擁有自動生成的調試和發佈解決方案配置。

  2. 在解決方案平臺中添加x86和x64。默認值是Any CPU。

  3. 從解決方案配置和平臺下拉列表中選擇(Debug/Release和x86/x64)的各種排列方式。確保項目匹配,他們應該。

  4. 進入每個項目(選擇項目名稱,然後按Alt + Enter)。

  5. 在項目屬性頁面中,選擇解決方案下拉列表中Debug/Release和x86/x64的各種排列。確保目標處理器設置正確(應該是的,但是我發現它們不是的時候,可能是因爲我以前的嘗試)。另外,設置輸出目錄。這應該是好的,並自動(/ bin/x86 /調試等)。如果沒有,請修復。

微軟沒有在工具欄中的解決方案平臺下拉列表中,所以如果你想改變的解決方案平臺,那麼你必須去建設|配置管理器並選擇適當的解決方案平臺。您可以從Build |中選擇解決方案配置配置管理器(Visual Studio將自動更新工具欄下拉列表中選定的解決方案配置),或者直接在Visual Studio下拉菜單中選擇新的解決方案配置。

建設該項目將照顧其餘的。

構建筆記 1. Visual Studio設計器需要x86版本的用戶控件才能正確顯示。這在發病時並不明顯,但是現在。 Visual Studio安裝到「C:\ Program Files(x86)」文件夾而不是「C:\ Program Files」文件夾,使Visual Studio成爲32位應用程序,而不是64位應用程序,因此它能夠「使用「設計師只有32位版本。

  1. 有可能是流浪/斌/調試和/斌/釋放文件夾,但它們將不被使用。

  2. 我仍然試圖讓BuildVersionInc在通過不同的配置構建相同的代碼時不增加,但這是一個不同的問題。

相關問題