Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Dalším krokem při poskytování automatizace projektu je implementace standardních objektů projektu: objektů Projects a ProjectItems kolekcí, Project objektů a ProjectItem zbývajících objektů jedinečných pro vaši implementaci. Tyto standardní objekty jsou definovány v souboru Dteinternal.h. Implementace standardních objektů je k dispozici v ukázce BscPrj. Tyto třídy můžete použít jako modely k vytvoření vlastních standardních objektů projektu, které stojí vedle objektů projektu z jiných typů projektů.
Uživatel automatizace předpokládá, že může volat Solution("<UniqueProjName>") a ProjectItems (n), kde n je číslo indexu pro získání konkrétního projektu v řešení. Provedení tohoto volání automatizace způsobí, že prostředí zavolá GetProperty příslušnou hierarchii projektu a předá VSITEMID_ROOT jako parametr ItemID a VSHPROPID_ExtObject jako parametr VSHPROPID. IVsHierarchy::GetPropertyIDispatch vrátí ukazatel na objekt automatizace poskytující základní Project rozhraní, které jste implementovali.
Následuje syntaxe .IVsHierarchy::GetProperty
HRESULT GetProperty (
VSITEMIDitemid,
VSHPROPIDpropid,
VARIANT *pvar
);
Projekty umožňují vnořování a použití kolekcí k vytváření skupin položek projektu. Hierarchie vypadá takto.
Projects
|- Project
|- ProjectItems (a collection of ProjectItem)
|- ProjectItem (single object) or ProjectItems (another collection)
Vnoření znamená, že ProjectItem objekt může být ProjectItems současně kolekcí, protože ProjectItems kolekce může obsahovat vnořené objekty. Ukázka základního projektu neukazuje toto vnoření. Implementací objektu Project se účastníte struktury podobné stromové struktuře, která charakterizuje návrh celkového modelu automatizace.
Automatizace projektu se řídí cestou v následujícím diagramu.

Automatizace projektů
Pokud objekt neimplementujete Project , vrátí prostředí obecný Project objekt, který obsahuje pouze název projektu.