共用方式為


將專案模型化

為專案提供自動化的下一個步驟是實作標準項目物件: ProjectsProjectItems 集合、 ProjectProjectItem 物件,以及您實作唯一的其餘物件。 這些標準物件定義於 Dteinternal.h 檔案中。 標準對象的實作會在 BscPrj 範例中提供。 您可以使用這些類別作為模型來建立您自己的標準項目物件,以與其他項目類型的項目物件並排運作。

自動化取用者假設能夠呼叫 Solution(“<UniqueProjName>")ProjectItemsn) ,其中 n 是取得解決方案中特定專案的索引編號。 進行此自動化呼叫會導致環境在適當的項目階層上呼叫 GetProperty ,將VSITEMID_ROOT傳遞為ItemID參數,並將VSHPROPID_ExtObject為 VSHPROPID 參數。 IVsHierarchy::GetPropertyIDispatch 傳回自動化物件的指標,提供您實作的核心 Project 介面。

以下是的 IVsHierarchy::GetProperty語法。

HRESULT GetProperty (

VSITEMIDitemid,

VSHPROPIDpropid,

VARIANT *pvar

);

專案容納巢狀,並使用集合來建立專案專案的群組。 階層看起來像這樣。

Projects
  |- Project
      |- ProjectItems (a collection of ProjectItem)
          |- ProjectItem (single object) or ProjectItems (another collection)

巢狀表示 ProjectItem 物件可以 ProjectItems 同時進行集合,因為 ProjectItems 集合可以包含巢狀物件。 基本專案範例不會示範此巢狀結構。 藉由實作 Project 物件,您可以參與樹狀結構,以描述整體自動化模型設計的特性。

專案自動化會遵循下圖中的路徑。

Visual Studio 項目物件

專案自動化

如果您未實 Project 作 對象,環境仍會傳回只包含專案名稱的泛型 Project 物件。

另請參閱