Sdílet prostřednictvím


Modelování projektu

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.

Objekty projektu sady Visual Studio

Automatizace projektů

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

Viz také