2010-05-08 43 views
2

我有一個開源的VSPackage,我想發佈支持Visual Studio 2005,Visual Studio 2008和Visual Studio 2010.我試圖找出如何創建安裝程序以及如何執行包註冊每個版本的Visual Studio。如何部署和註冊支持多個版本的Visual Studio(2005,2008,2010)的VSPackage?

我所做的部署研究表明我最好的選擇是安裝程序是MSI內的VSIX。

我所做的註冊研究很少清楚。每個版本的VSPackage註冊似乎都不同(VS2005使用regpkg,VS2008使用pkgdef,VS2010使用VSIX)。

任何人都可以分享他們的經驗和/或指向任何有關定位多個版本的Visual Studio的最佳方法的信息?我正在尋找最簡單的實施方法,如果合理可行,最好將它保存在一個安裝程序中。

任何幫助將不勝感激!

回答

4

簡答:如果您希望單個安裝程序以2005,2008,& 2010爲目標/註冊,實際上這個選擇非常簡單。您應該創建一個基於MSI的安裝程序並註冊到HKLM \ Software \ Microsoft \ VisualStudio \(8.0 | 9.0 | 10.0)。

說明:對於MSI/VSIX的問題...請記住,VSIX是2010年的新產品。VS 2005/2008的機器不知道如何處理VSIX文件。

關於VSIX的一個注意事項....你不應該把一個VSIX文件(即zip容器)放在MSI中。如果你想要一個基於MSI的擴展,它也出現在擴展管理器對話框中,你應該在你的extension.vsixmanifest文件<InstalledByMSI>標籤,並放下<下已經展開 VisualStudio2010InstallDir > \ Common7 \ IDE \的文件擴展程序\ <YourExtensionDirectory>。

至於註冊去...你有幾個不正確的東西在你的問題。對於2005年和2008年,使用Visual Studio註冊軟件包的安裝程序都應該始終在HKEY_LOCAL_MACHINE下注冊。 (PKgdef在2008年爲「Shell獨立」的應用程序。)除了佈設一個pkgdef文件現在支持的選項在Visual Studio註冊表2010

RegPkg是包含在實用適用於2005/2008/2010的Visual Studio SDK反映了您的軟件包組合並以多種不同格式輸出適當的註冊信息。它意味着在開發/構建時用於生成註冊信息,不應該用作安裝程序的一部分。

CreatePkgDef.exe是2010年的一個工具,與RegPkg.exe基本相同,但它只有只有輸出pkgdef文件。

+0

很好,謝謝亞倫的回答和細節。 :) – 2010-05-11 11:59:54

相關問題