|
34 | 34 | </RegistryKey>
|
35 | 35 | </Component>
|
36 | 36 | </ComponentGroup>
|
| 37 | + |
| 38 | + <!-- Set values for DOTNETHOME if not passed in. |
| 39 | + These searches prefer the existing registry key and fallback to probing the default location if registry key isn't present --> |
| 40 | + <Property Id="DOTNETHOME_X86_SEARCH"> |
| 41 | + <DirectorySearch Id="dirDOTNETHOME_X86_search" Path="[ProgramFilesFolder]dotnet" AssignToProperty="yes"> |
| 42 | + <FileSearch Id="fileDOTNETHOME_X86_search" Name="dotnet.exe" /> |
| 43 | + </DirectorySearch> |
| 44 | + <RegistrySearch Id="regDOTNETHOME_X86_search" Root="HKLM" Key="SOFTWARE\dotnet\Setup\InstalledVersions\x86" Name="InstallLocation" Win64="no" Type="raw" /> |
| 45 | + </Property> |
| 46 | + <Property Id="DOTNETHOME_X64_SEARCH"> |
| 47 | + <DirectorySearch Id="dirDOTNETHOME_X64_search" Path="[ProgramFiles64Folder]dotnet" AssignToProperty="yes"> |
| 48 | + <FileSearch Id="fileDOTNETHOME_X64_search" Name="dotnet.exe" /> |
| 49 | + </DirectorySearch> |
| 50 | + <RegistrySearch Id="regDOTNETHOME_X64_search" Root="HKLM" Key="SOFTWARE\dotnet\Setup\InstalledVersions\x64" Name="InstallLocation" Win64="no" Type="raw" /> |
| 51 | + </Property> |
| 52 | + <Property Id="DOTNETHOME_X64_ALT_SEARCH"> |
| 53 | + <DirectorySearch Id="dirDOTNETHOME_X64_ALT_search" Path="[ProgramFiles64Folder]dotnet\x64" AssignToProperty="yes"> |
| 54 | + <FileSearch Id="fileDOTNETHOME_X64_ALT_search" Name="dotnet.exe" /> |
| 55 | + </DirectorySearch> |
| 56 | + <RegistrySearch Id="regDOTNETHOME_X64_ALT_search" Root="HKLM" Key="SOFTWARE\dotnet\Setup\InstalledVersions\x64" Name="InstallLocation" Win64="no" Type="raw" /> |
| 57 | + </Property> |
| 58 | + <Property Id="DOTNETHOME_ARM64_SEARCH"> |
| 59 | + <DirectorySearch Id="dirDOTNETHOME_ARM64_search" Path="[ProgramFiles64Folder]dotnet" AssignToProperty="yes"> |
| 60 | + <FileSearch Id="fileDOTNETHOME_ARM64_search" Name="dotnet.exe" /> |
| 61 | + </DirectorySearch> |
| 62 | + <RegistrySearch Id="regDOTNETHOME_ARM64_search" Root="HKLM" Key="SOFTWARE\dotnet\Setup\InstalledVersions\arm64" Name="InstallLocation" Win64="no" Type="raw" /> |
| 63 | + </Property> |
| 64 | + |
| 65 | + <!-- Set the DOTNETHOME property if not passed in and we found a path --> |
| 66 | + <SetProperty Id="DOTNETHOME_X86" Value="[DOTNETHOME_X86_SEARCH]" Before="CostFinalize"> |
| 67 | + NOT DOTNETHOME_X86 AND DOTNETHOME_X86_SEARCH |
| 68 | + </SetProperty> |
| 69 | + <SetProperty Id="DOTNETHOME_X64" Value="[DOTNETHOME_X64_SEARCH]" Before="CostFinalize"> |
| 70 | + NOT DOTNETHOME_X64 AND DOTNETHOME_X64_SEARCH AND %PROCESSOR_ARCHITECTURE="AMD64" |
| 71 | + </SetProperty> |
| 72 | + <SetProperty Action="Set_DOTNETHOME_X64_alt" Id="DOTNETHOME_X64" Value="[DOTNETHOME_X64_ALT_SEARCH]" Before="CostFinalize"> |
| 73 | + NOT DOTNETHOME_X64 AND DOTNETHOME_X64_ALT_SEARCH AND NOT %PROCESSOR_ARCHITECTURE="AMD64" |
| 74 | + </SetProperty> |
| 75 | + <SetProperty Id="DOTNETHOME_ARM64" Value="[DOTNETHOME_ARM64_SEARCH]" Before="CostFinalize"> |
| 76 | + NOT DOTNETHOME_ARM64 AND DOTNETHOME_ARM64_SEARCH |
| 77 | + </SetProperty> |
| 78 | + |
37 | 79 | </Fragment>
|
38 | 80 | </Wix>
|
0 commit comments