Visual Studio 擴充功能部署
Visual Studio 支援三種用於部署擴充功能的格式:Visual Studio Extension (VSIX)、Windows Installer (MSI) 和 Visual Studio 內容安裝程式 (VSI).您也可以使用平台註冊向 Visual Studio 註冊自訂控制項。本主題比較各種不同的部署策略,並列出其能力。
選取部署方法
根據要部署的擴充功能類型和部署方法的功能,選取您的部署格式。
VSIX
當您上載 VSIX 封裝格式中的擴充程式Visual Studio 庫 網站,使用者可以尋找並安裝這些角色檢查線上的擴充功能,在 延伸模組及更新對話方塊。如需詳細資訊,請參閱安裝和管理 Visual Studio 工具和擴充功能。
您可以使用 VSIX 格式來封裝專案和項目範本、 Visual Studio 整合套件、 管理擴充性架構 (MEF) 元件、 工具箱控制項、 組件,以及自訂型別。VSIX 格式嚴格使用檔案架構的部署,且不支援寫入全域組件快取 (GAC) 或系統登錄。VSIX 是其支援的擴充功能類型所慣用的部署方法。
若要進行 VSIX 部署,您必須已安裝 Visual Studio SDK。如需詳細資訊,請參閱 Visual Studio SDK 文件中的VSIX 部署。
MSI
當您在 Visual Studio 中建立安裝專案時,將它加入至含有您的擴充程式的方案,然後建置專案,您即可取得 .msi 檔。MSI 格式支援大部分的應用程式和擴充功能類型,而且可以執行寫入 GAC 和系統登錄等安裝作業。在延伸模組及更新對話方塊中,您可以顯示並安裝 MSI 為基礎的擴充程式,但是就無法啟用或停用它們。如需 MSI 部署的詳細資訊,請參閱 Windows Installer 部署。
注意事項 |
---|
執行devenv /setup在安裝或解除安裝 MSI 副檔名之後。 |
VSI
Visual Studio 的內容安裝程式不支援上載至 Visual Studio 組件庫,解除安裝,或寫入至 GAC 或系統登錄。不過,您可用它來部署增益集和程式碼片段,VSIX 格式不支援。如需詳細資訊,請參閱 HOW TO:封裝元件以使用 Visual Studio 內容安裝程式。
平台註冊
下列清單顯示 AssemblyFoldersEx 登錄所支援的功能。
在一個目錄中大量安裝所有控制項,無須個別註冊每個控制項。
支援在工具箱中指派圖示以及分組控制項。
將組件納入 Visual Studio 的 [加入參考] 對話方塊,以及 (選擇性) 將控制項納入工具箱的 [選擇項目] 對話方塊。
在基本架構登錄機碼中單一位置進行的簡單註冊。如此可省去檢查不同 Visual Studio SKU 以及找到每個根機碼的麻煩。
支援單一控制項組件包含多個執行階段組件,且目標設定為特定的 Visual Studio 版本或 Expression Blend 版本。
如需使用此功能的詳細資訊及範例,請參閱部署自訂控制項和設計階段屬性。
MSI 中的平台註冊
若要將組件加入至 [加入參考] 對話方塊,以及將控制項加入至工具箱 [選擇項目] 對話方塊,您必須向 Managed 平台的 AssemblyFoldersEx 登錄機碼註冊組件。若要使用圖示和索引標籤位置將控制項安裝至工具箱,您還必須指定 Toolbox 登錄機碼中的值。如需詳細資訊,請參閱部署自訂控制項和設計階段屬性。
支援的擴充功能類型
下表說明封裝格式所支援的擴充功能類型。
擴充功能類型 |
VSIX |
MSI |
VSI |
平台註冊 |
---|---|---|---|---|
專案範本 |
是 |
是 |
是 |
否 |
項目範本 |
是 |
是 |
是 |
否 |
Assembly |
是 |
是 |
否 |
是 |
MEF 元件 |
是 |
是 |
否 |
否 |
VSPackage |
是 |
是 |
否 |
否 |
工具箱控制項 |
是 |
是 |
是 |
是 |
增益集 |
否 |
是 |
是 |
否 |
程式碼片段 |
否 |
否 |
是 |
否 |
自訂擴充功能類型 |
是 |
是 |
否 |
否 |
支援的功能
下表說明封裝格式所支援的安裝選項。
功能 |
VSIX |
MSI |
VSI |
平台註冊 |
MSI 中的平台註冊 |
---|---|---|---|---|---|
啟用和停用已安裝的擴充功能 |
是 |
否 |
否 |
否 |
否 |
檢查是否有更新 |
是 |
否 |
否 |
否 |
否 |
寫入檔案登錄 |
否 |
是 |
否 |
是 |
是 |
登錄於 GAC |
否 |
是 |
否 |
是 |
是 |
在安裝期間設定 |
否 |
是 |
否 |
是 |
是 |
上載至 Visual Studio Gallery |
是 |
是 |
否 |
否 |
否 |
按兩下安裝 |
是 |
是 |
是 |
否 |
是 |
出現在工具箱 [選擇項目] 對話方塊中。 |
否 |
是 |
否 |
是 |
是 |
出現在 [加入參考] 對話方塊中。 |
否 |
是 |
否 |
是 |
是 |
在 Visual Studio 之前 (之後) 安裝 |
否 |
是 |
否 |
是 |
是 |
目標設定其他設計工具,例如 Expression Blend |
否 |
是 |
否 |
是 |
是 |
發行
將任何 Visual Studio 擴充功能上載至網站或網路共用上,即可發佈該 Visual Studio 擴充功能。如果部署套件是 VSIX 的格式,或 MSI,您可以讓它使用擴充程式和更新 傳給它的所有 Visual Studio 的使用者] 對話方塊中 Visual Studio 庫 的網站,會使封裝中的 [看得見 延伸模組及更新對話方塊。您可以將其他類型的擴充功能加入至這個組件庫做為參考連結。
請參閱
工作
HOW TO:封裝元件以使用 Visual Studio 內容安裝程式