Share via


組建組態

組建組態會提供儲存多個方案版本專案屬性的方式。 使用中的組態可快速存取和變更,如此方便您建置同一專案的多個組態。

根據預設,使用 Visual Studio 建立的專案會包含偵錯和發行組態。 偵錯組態會自動設定為對應用程式進行偵錯,而發行組態則設定為應用程式的最終版本。 如需詳細資訊,請參閱 HOW TO:設定偵錯和發行組態。 您也可以依據應用程式的需要,建立和編輯自己的自訂方案和專案組態。 如需詳細資訊,請參閱 HOW TO:建立和編輯組態

Visual Studio 中可以定義兩種層次的組建組態:方案組態和專案組態。

方案組態

方案組態會指定如何建置和 (如果有啟用) 部署方案中的專案。 若要定義新的方案組態請開啟組態管理員對話方塊,然後從 [使用中方案組態] 清單中選取 [新增]。

方案組態中的每個項目都包含專案名稱、組態設定、平台設定、建置設定,以及 (如果有啟用) 部署設定。 選擇的方案組態和方案平台設定的組合決定了要使用的專案組態。 如需方案平台的詳細資訊,請參閱建置平台

您可以建立任意數目的方案組態,每一個都有其唯一的名稱。 執行下列作業時,Visual Studio 整合開發環境 (Integrated Development Environment,IDE) 會自動指派方案組態:

  • 加入專案平台且已選取 [建立新方案平台]。

  • 加入專案組態且已選取 [建立新方案組態]。

  • 加入了要在多個平台部署的新專案,其中一個是新平台。

方案組態還會提供一般專案內容資訊給 IDE。 例如,如果使用中的方案組態指定要為行動裝置建置專案,則處理該專案時,[工具箱] 只會顯示能夠用於行動裝置專案的專案項目。

專案組態

專案組態和專案平台會一併用來指定建置專案時使用的屬性。 針對每一個唯一的組態與平台組合,專案都可擁有一組已定義的專案屬性。 專案屬性是使用專案設計工具 (Project Designer) 編輯。 專案設計工具中的某些窗格有下拉式清單,會指出目前的專案組態和平台組合。

您可以視需要在每一個專案組態裡定義組態相關的屬性。 可以使用專案屬性決定,例如,特定組建中要包含的專案項目、要建立的輸出檔案、放置輸出檔案的位置,以及最佳化的方式。

不同的專案組態可能會有很大的差異。 例如,某個專案組態的屬性可能會指定將輸出檔案最佳化,讓產生的二進位佔用最小空間,而另一個專案的最佳化方式可能是讓可執行檔以最大速度執行。

專案組態並不是由使用者儲存,而是由方案儲存,所以能夠讓小組的成員共用。 雖然專案相依性與組態無關,不過只會建置使用中方案組態中指定的專案。

變更方案組態

建置方案時,Visual Studio 會使用作用中方案組態,其中指定要建置的每一個專案使用的專案組態。 您可以從 [標準] 工具列的 [方案組態] 下拉式清單,或從組態管理員對話方塊對話方塊中直接變更使用中組態。

注意事項注意事項

如果在 [標準] 工具列上找不到方案組態設定,或無法存取 [組態管理員],您可以套用 Visual Basic 開發人員設定。 如需詳細資訊,請參閱 HOW TO:在套用 Visual Basic 開發者設定的情況下管理組建組態

IDE 如何指派要建置的專案組態

建立新的方案組態 (而非複製即有的組態) 時,IDE 會使用下列選取準則 (以下列順序評估),決定要建置的每一個專案的預設專案組態:

  1. 新的方案組態會建置名稱完全符合本身特有名稱的專案組態。 組態名稱並不區分大小寫。

  2. 如果沒有完全符合的名稱,新的方案組態會建置一個名稱和其名稱組態部分相符的專案組態,不論其平台部分是否相符 (請記住,命名慣例是 <configuration name> <platform-name>)。

  3. 如果還是沒有相符的名稱,新的方案組態會建置為專案列出的第一個組態。

IDE 指派方案組態的方式

當您建立專案組態並選取 [建立新方案組態] 時,IDE 會尋找適當的命名方案組態,以便在其支援的每一種平台上建置專案。 在某些情況下,IDE 會將重新命名現有的方案組態,或者建立新組態。

IDE 會利用下列選取準則決定如何指派方案組態:

  • 如果專案組態沒有指定平台或指定了單一平台,將會尋找或加入名稱與新專案組態相符的方案組態。 在此情況下,這個預設方案組態的名稱並不包含平台名稱,而其格式為 <project configuration name>。

  • 如果專案支援多重平台,則會針對每一個專案組態尋找或加入一個方案組態,以便在其支援的每一個平台上建置各專案。 每一個方案組態的名稱都包含專案組態名稱和平台名稱,而其格式為 <project configuration name> <platform name>。

請參閱

參考

組態管理員對話方塊

Devenv 命令列參數

概念

以專案做為容器

專案屬性

其他資源

在 Visual Studio 中建置

C/C++ 建置參考