專案組態物件
項目組態物件會管理UI的組態信息顯示。
項目組態屬性頁
項目組態提供者會管理專案組態。 環境和其他封裝,若要存取及擷取專案組態的相關信息,請呼叫附加至 Project Configuration Provider 物件的介面。
注意
您無法以程式設計方式建立或編輯方案組態檔。 您必須使用 DTE.SolutionBuilder
。 如需詳細資訊,請參閱 解決方案組態 。
若要發佈要在群組態 UI 中使用的顯示名稱,您的項目應該實 get_DisplayName作 。 環境會呼叫 GetCfgs,它會傳回指標清單 IVsCfg
,您可以用來取得要列在環境 UI 中之組態和平臺資訊的顯示名稱。 使用中的組態和平臺是由儲存在使用中解決方案組態中的項目組態所決定。 FindActiveProjectCfg方法可用來擷取使用中的項目組態。
IVsProjectCfgProvider物件可以選擇性地在 對象上IVsCfgProvider2實作物件IVsCfgProviderEventsHelper,以允許您根據標準專案組態名稱擷取IVsProjectCfg2
物件。
另一個提供環境和其他專案存取專案組態的方法,是讓專案提供方法的實作 IVsCfgProvider2::GetCfgs
,以傳回一或多個組態物件。 專案也可以實 IVsProjectCfg2作 繼承自 IVsProjectCfg
,因而繼承自 IVsCfg
,以提供組態特定資訊。 IVsCfgProvider2 支援新增、刪除和重新命名專案組態的平臺和功能。
注意
由於 Visual Studio 不再限於兩種組態類型,因此處理組態的程式代碼不應該以設定數目的假設撰寫,也不應該以假設只有一個組態的專案一定是偵錯或零售。 這會使用 get_IsReleaseOnly 和 get_IsDebugOnly 過時。
在從 IVsGetCfgProvider::GetCfgProvider
擷取 IVsCfgProvider2
傳回的物件上呼叫 QueryInterface
。 如果在IVsGetCfgProvider
項目物件上IVsProject3
呼叫 QueryInterface
找不到 ,您可以呼叫 QueryInterface
針對 所傳回IVsHierarchy::GetProperty(VSITEM_ROOT, VSHPROPID_BrowseObject)
之 對象的階層根瀏覽器物件,或透過針對 傳回IVsHierarchy::GetProperty(VSITEM_ROOT, VSHPROPID_ConfigurationProvider)
之組態提供者的指標來存取組態提供者物件。
IVsProjectCfg2
主要提供建置、偵錯和部署管理物件的存取權,並允許專案自由將輸出分組。 和 IVsProjectCfg2
的方法IVsProjectCfg
可用來實IVsBuildableProjectCfg作來管理建置程式,以及IVsOutputGroup組態輸出群組的指標。
即使群組中包含的輸出數目可能會因組態而異,專案仍必須針對支援的每個組態傳回相同的群組數目。 群組也必須有相同的標識碼資訊(標準名稱、顯示名稱和群組資訊),從組態到專案內的組態。 如需詳細資訊,請參閱 輸出的項目組態。
若要開啟偵錯,您的設定應該實作 IVsDebuggableProjectCfg。 IVsDebuggableProjectCfg
是專案所實作的選擇性介面,可讓調試程序啟動組態,並在具有 IVsCfg
和 IVsProjectCfg
的組態對象上實作。 當使用者選擇按 F5 啟動調試程式時,環境會呼叫它。
ISpecifyPropertyPages
和 IDispatch
會與屬性頁搭配使用,以擷取和顯示與組態相關的資訊給使用者。 如需詳細資訊,請參閱 屬性頁。