Sdílet prostřednictvím


Objekt konfigurace projektu

Objekt konfigurace projektu spravuje zobrazení informací o konfiguraci do uživatelského rozhraní.

Konfigurace projektu sady Visual Studio

Stránky vlastností konfigurace projektu

Zprostředkovatel konfigurace projektu spravuje konfigurace projektu. Prostředí a další balíčky pro získání přístupu k konfiguracím projektu a načtení informací o jejich konfiguracích volejte rozhraní připojená k objektu zprostředkovatele konfigurace projektu.

Poznámka:

Konfigurační soubory řešení nemůžete vytvářet ani upravovat programově. Musíte použít DTE.SolutionBuilder. Další informace najdete v tématu Konfigurace řešení.

Pokud chcete publikovat zobrazovaný název, který se má použít v uživatelském rozhraní konfigurace, měl by váš projekt implementovat get_DisplayName. Volání prostředí GetCfgs, které vrátí seznam ukazatelů, které můžete použít k získání zobrazovaných IVsCfg názvů informací o konfiguraci a platformě, které mají být uvedeny v uživatelském rozhraní prostředí. Aktivní konfigurace a platforma jsou určeny konfigurací projektu uloženou v konfiguraci aktivního řešení. Metodu FindActiveProjectCfg lze použít k načtení konfigurace aktivního projektu.

Objekt IVsProjectCfgProvider lze volitelně implementovat na IVsCfgProvider2 objekt s objektem IVsCfgProviderEventsHelper , který vám umožní načíst IVsProjectCfg2 objekt na základě názvu konfigurace kanonického projektu.

Dalším způsobem, jak zajistit prostředí a další projekty s přístupem ke konfiguracím projektu, je poskytnout projektům implementaci IVsCfgProvider2::GetCfgs metody pro vrácení jednoho nebo více objektů konfigurace. Projekty mohou také implementovat IVsProjectCfg2, které dědí z IVsProjectCfg a tím z IVsCfg, poskytovat informace specifické pro konfiguraci. IVsCfgProvider2 podporuje platformy a funkce pro přidávání, odstraňování a přejmenování konfigurací projektu.

Poznámka:

Vzhledem k tomu, že sada Visual Studio už není omezena na dva typy konfigurace, kód, který zpracovává konfigurace, by neměl být napsán s předpoklady o počtu konfigurací, ani by se neměl zapsat s předpokladem, že projekt, který má pouze jednu konfiguraci, je nutně buď Debug nebo Retail. Díky tomu se používá get_IsReleaseOnly a get_IsDebugOnly zastaralá.

Volání QueryInterface objektu vráceného z IVsGetCfgProvider::GetCfgProvider načtení IVsCfgProvider2. Pokud IVsGetCfgProvider se nenajde voláním QueryInterface objektu IVsProject3 projektu, můžete získat přístup k objektu zprostředkovatele konfigurace voláním QueryInterface objektu kořenového prohlížeče hierarchie pro objekt vrácený pro IVsHierarchy::GetProperty(VSITEM_ROOT, VSHPROPID_BrowseObject)objekt nebo ukazatelem na zprostředkovatele konfigurace vráceného pro IVsHierarchy::GetProperty(VSITEM_ROOT, VSHPROPID_ConfigurationProvider).

IVsProjectCfg2 primárně poskytuje přístup k objektům pro správu sestavení, ladění a nasazení a umožňuje projektům seskupit výstupy. Metody IVsProjectCfg a IVsProjectCfg2 lze je použít k implementaci IVsBuildableProjectCfg pro správu procesu sestavení a IVsOutputGroup ukazatele pro výstupní skupiny konfigurace.

Projekt musí vrátit stejný počet skupin pro každou konfiguraci, kterou podporuje, i když se počet výstupů obsažených ve skupině může lišit od konfigurace až po konfiguraci. Skupiny musí mít také stejné informace o identifikátoru (kanonický název, zobrazovaný název a informace o skupině) z konfigurace do konfigurace v rámci projektu. Další informace naleznete v tématu Konfigurace projektu pro výstup.

Chcete-li povolit ladění, vaše konfigurace by měly implementovat IVsDebuggableProjectCfg. IVsDebuggableProjectCfg je volitelné rozhraní implementované projekty, aby ladicí program mohl spustit konfiguraci a je implementován v objektu konfigurace s IVsCfg a IVsProjectCfg. Prostředí ho volá, když se uživatel rozhodne spustit ladicí program stisknutím klávesy F5.

ISpecifyPropertyPages a IDispatch používají se ve spojení se stránkami vlastností k načtení a zobrazení informací závislých na konfiguraci pro uživatele. Další informace naleznete v tématu Stránky vlastností.

Viz také