2012-01-20 40 views
0

我創建了一個VS包,並嘗試通過MSI安裝它。我不想使用.vsix文件,因此將所需的文件部署到%localAppData%\Microsoft\VisualStudio\10.0\Extensions。將安裝vs包,但擴展管理器顯示包爲[Disabled]。我知道我們應該進入註冊表來擺脫這一點,但我不確定註冊表值的內容。如何在localAppData位置手動註冊通過MSI安裝的VSPackage

我創建.reg文件具有以下內容:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\ExtensionManager\EnabledExtensions] 
"MyPackage,1.0.0"=hex(2):25,00,4c,00,6f,00,63,00,61,00,6c,00,41,00,70,00,70,00,44,\ 
    00,61,00,74,00,61,00,25,00,5c,00,4d,00,69,00,63,00,72,00,6f,00,73,00,6f,00,\ 
    66,00,74,00,5c,00,56,00,69,00,73,00,75,00,61,00,6c,00,53,00,74,00,75,00,64,\ 
    00,69,00,6f,00,5c,00,31,00,30,00,2e,00,30,00,5c,00,45,00,78,00,74,00,65,00,\ 
    6e,00,73,00,69,00,6f,00,6e,00,73,00,5c,00,54,00,68,00,6f,00,6d,00,73,00,6f,\ 
    00,6e,00,20,00,52,00,65,00,75,00,74,00,65,00,72,00,73,00,5c,00,50,00,72,00,\ 
    6f,00,70,00,65,00,72,00,74,00,79,00,57,00,69,00,6e,00,64,00,6f,00,77,00,50,\ 
    00,61,00,63,00,6b,00,61,00,67,00,65,00,5c,00,31,00,2e,00,30,00,5c,00,00,00 

然後導入在我的Visual Studio安裝項目註冊表編輯器文件。 MSI安裝後的Windows註冊表所做的入口看起來像如下:

"#%%LocalAppData%\Microsoft\VisualStudio\10.0\Extensions\[Manufacture]\[ProductName]\[Version]\ 

任何指針將是有益的。

回答

1

你的答案可以找到here。基本上你不會自己創建註冊表內容 - 稱爲RegPkg的特殊工具可以爲你做到這一點。首先,創建你的包,即DLL。然後使用RegPkg從dll創建reg文件。將reg文件導入到MSI項目中,用變量替換硬編碼路徑,然後就可以開始了。 RegPkg隨Visual Studio SDK提供。

相關問題