VSIX deployment
***Disclaimer: This information applies to Visual Studio 2010 Beta 1 only.***
Quan already wrote a great post that explain what VSIX is. In this post I will covered the details of VSIX deployment.
When we double click a VSIX file from windows explorer the following dialog is shown:
This is because the .vsix extension is registered within the windows shell. As part of that registration there is also information about which program to launch when we double click a VSIX file. And that executable is the VSIXInstaller and it is located under %VS10_Install_Dir%\Common7\IDE\VSIXInstaller.exe
The VSIXInstaller tool uses the Microsoft.VisualStudio.ExtensionManager.IVsExtensionManager service to install the extension, which perform the following steps:
- It unzips the content of the VSIX file under %LocalAppData%\Microsoft\VisualStudio\10.0\Extensions\%Extension_Author%\%Extension_Name%\%Extension_Version%.
- It adds registry information under HKCU\Software\Microsoft\VisualStudio\10.0\ExtensionManager\EnabledExtensions to enable the extension in Visual Studio.
Depending on the extension content type a Visual Studio restart will be needed. This is the case for MEFComponent and VSPackage content types.
Stay tuned,
Pablo