專案模型的元素
Visual Studio 中所有專案的介面和實作會共用基本結構:專案類型的專案模型。 在您的專案模型 (即您正在開發的 VSPackage) 中,您會建立符合設計決策的物件,並與 IDE 所提供的全域功能搭配使用。 例如,雖然您可以控制專案項目的保存方式,您不會控制檔案必須保存的通知。 當使用者將焦點放在開啟的專案項目上,並選擇Visual Studio 功能表列的 [檔案] 功能表上的 [儲存] 時,您的專案類型程式碼必須攔截來自 IDE 的命令、保存檔案,並將檔案不再更改的通知發送回 IDE。
VSPackage 會透過提供對 IDE 介面的存取服務與 IDE 互動。 例如:透過特定服務,您可以監視和路由命令,並為專案中所做的選擇提供內容資訊。 VSPackage 所需的所有全域 IDE 功能都是由服務提供。 如需服務的詳細資訊,請參閱如何:取得服務。
其他實作考量:
單一專案模型可以包含多個專案類型。
專案類型和語音應答專案 Factory 會獨立向 GUID 註冊。
每個專案都必須有範本檔案或精靈,以便在使用者透過 Visual Studio UI 建立新專案時初始化新專案檔案。 例如,Visual C++ 範本會初始化最終變成 .vcproj 檔案的內容。
下圖顯示組成一般專案實作的主要介面、服務和物件。 您可以使用應用程式協助程式
HierUtil7
來建立基礎物件和未定案程式設計。 如需應用程式協助程式的詳細資訊HierUtil7
,請參閱使用 HierUtil7 專案類別來實作專案類型 (C++)。專案模型
如需上圖所列介面和服務的詳細資訊,以及圖表中未包含之其他選擇性介面的詳細資訊,請參閱專案模型的核心元件。
專案可以支援命令,因此必須實作 IOleCommandTarget 介面,才能透過命令內容 GUID 參與命令路由。