| 1 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> |
| 2 | |
| 3 | |
| 4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> |
| 5 | <Fragment> |
| 6 | <Property Id="VS2010_VSIX_INSTALLER_PATH" Secure="yes"> |
| 7 | <RegistrySearch Id="WixVS2010EnvDir" Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\10.0\Setup\VS" Name="EnvironmentDirectory" Type="directory"> |
| 8 | <FileSearch Id="WixVS2010VsixInstaller" Name="VSIXInstaller.exe" /> |
| 9 | </RegistrySearch> |
| 10 | </Property> |
| 11 | |
| 12 | <Property Id="VS2012_VSIX_INSTALLER_PATH" Secure="yes"> |
| 13 | <RegistrySearch Id="WixVS2012EnvDir" Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\11.0\Setup\VS" Name="EnvironmentDirectory" Type="directory"> |
| 14 | <FileSearch Id="WixVS2012VsixInstaller" Name="VSIXInstaller.exe" /> |
| 15 | </RegistrySearch> |
| 16 | </Property> |
| 17 | |
| 18 | <Property Id="VS2013_VSIX_INSTALLER_PATH" Secure="yes"> |
| 19 | <RegistrySearch Id="WixVS2013EnvDir" Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\12.0\Setup\VS" Name="EnvironmentDirectory" Type="directory"> |
| 20 | <FileSearch Id="WixVS2013VsixInstaller" Name="VSIXInstaller.exe" /> |
| 21 | </RegistrySearch> |
| 22 | </Property> |
| 23 | |
| 24 | <!-- VS2015 is the latest VSIX at this point in time, so search for that by default. --> |
| 25 | <Property Id="VS2015_VSIX_INSTALLER_PATH" Secure="yes"> |
| 26 | <RegistrySearch Id="WixVS2015EnvDir" Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\14.0\Setup\VS" Name="EnvironmentDirectory" Type="directory"> |
| 27 | <FileSearch Id="WixVS2015VsixInstaller" Name="VSIXInstaller.exe" /> |
| 28 | </RegistrySearch> |
| 29 | </Property> |
| 30 | |
| 31 | <Property Id="VS_VSIX_INSTALLER_PATH" Secure="yes" /> |
| 32 | |
| 33 | <!-- VWD2012 registers differently than the rest of Visual Studio, so search for it in the case VS2012 is missing. --> |
| 34 | <Property Id="VWD2012_VSIX_INSTALL_ROOT"> |
| 35 | <RegistrySearch Id="Vwd2012Search" Root="HKLM" Key="SOFTWARE\Microsoft\VWDExpress\11.0\Setup\VS" Name="ProductDir" Type="raw" /> |
| 36 | </Property> |
| 37 | |
| 38 | <!-- VWD2013 registers differently than the rest of Visual Studio, so search for it in the case VS2013 is missing. --> |
| 39 | <Property Id="VWD2013_VSIX_INSTALL_ROOT"> |
| 40 | <RegistrySearch Id="Vwd2013Search" Root="HKLM" Key="SOFTWARE\Microsoft\VWDExpress\12.0\Setup\VS" Name="ProductDir" Type="raw" /> |
| 41 | </Property> |
| 42 | |
| 43 | <!-- VWD2015 registers differently than the rest of Visual Studio, so search for it in the case VS2015 is missing. --> |
| 44 | <Property Id="VWD2015_VSIX_INSTALL_ROOT"> |
| 45 | <RegistrySearch Id="Vwd2015Search" Root="HKLM" Key="SOFTWARE\Microsoft\VWDExpress\14.0\Setup\VS" Name="ProductDir" Type="raw" /> |
| 46 | </Property> |
| 47 | |
| 48 | <!-- Use the latest VS- or VWD-installed VSIXInstaller.exe. --> |
| 49 | <SetProperty Action="SetVS2015Vsix" Id="VS_VSIX_INSTALLER_PATH" Value="[VS2015_VSIX_INSTALLER_PATH]" Sequence="both" After="AppSearch" Condition="NOT VS_VSIX_INSTALLER_PATH AND VS2015_VSIX_INSTALLER_PATH" /> |
| 50 | <SetProperty Action="Vwd2015VsixWhenVSAbsent" Id="VS_VSIX_INSTALLER_PATH" Value="[VWD2015_VSIX_INSTALL_ROOT]\Common7\IDE\VSIXInstaller.exe" Sequence="both" After="SetVS2015Vsix" Condition="NOT VS_VSIX_INSTALLER_PATH AND VWD2015_VSIX_INSTALL_ROOT" /> |
| 51 | |
| 52 | <SetProperty Action="SetVS2013Vsix" Id="VS_VSIX_INSTALLER_PATH" Value="[VS2013_VSIX_INSTALLER_PATH]" Sequence="both" After="Vwd2015VsixWhenVSAbsent" Condition="NOT VS_VSIX_INSTALLER_PATH AND VS2013_VSIX_INSTALLER_PATH" /> |
| 53 | <SetProperty Action="Vwd2013VsixWhenVSAbsent" Id="VS_VSIX_INSTALLER_PATH" Value="[VWD2013_VSIX_INSTALL_ROOT]\Common7\IDE\VSIXInstaller.exe" Sequence="both" After="SetVS2013Vsix" Condition="NOT VS_VSIX_INSTALLER_PATH AND VWD2013_VSIX_INSTALL_ROOT" /> |
| 54 | |
| 55 | <SetProperty Action="SetVS2012Vsix" Id="VS_VSIX_INSTALLER_PATH" Value="[VS2012_VSIX_INSTALLER_PATH]" Sequence="both" After="Vwd2013VsixWhenVSAbsent" Condition="NOT VS_VSIX_INSTALLER_PATH AND VS2012_VSIX_INSTALLER_PATH" /> |
| 56 | <SetProperty Action="Vwd2012VsixWhenVSAbsent" Id="VS_VSIX_INSTALLER_PATH" Value="[VWD2012_VSIX_INSTALL_ROOT]\Common7\IDE\VSIXInstaller.exe" Sequence="both" After="SetVS2012Vsix" Condition="NOT VS_VSIX_INSTALLER_PATH AND VWD2012_VSIX_INSTALL_ROOT" /> |
| 57 | |
| 58 | <SetProperty Action="SetVS2010Vsix" Id="VS_VSIX_INSTALLER_PATH" Value="[VS2010_VSIX_INSTALLER_PATH]" Sequence="both" After="Vwd2012VsixWhenVSAbsent" Condition="NOT VS_VSIX_INSTALLER_PATH AND VS2010_VSIX_INSTALLER_PATH" /> |
| 59 | </Fragment> |
| 60 | </Wix> |