Refactor .NET runtime scripts to work with new WixExtract behavior

This commit is contained in:
Homes32
2025-12-07 22:01:17 -06:00
parent 6bcd24aa00
commit 3f71856c26
6 changed files with 87 additions and 87 deletions
@@ -34,8 +34,8 @@ Description=(v5.0.17) .NET 5 is a cross-platform software development framework
Selected=False
Level=4
Author=Homes32
Version=1.0.1.0
Date=2025-06-25
Version=1.0.3.0
Date=2025-12-05
Mandatory=False
[Variables]
@@ -54,12 +54,12 @@ If,Not,ExistFile,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersio
///////////////////////////////////////////////////////////////////////////////////
// Extract Files
Echo,"Extracting files..."
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
///////////////////////////////////////////////////////////////////////////////////
// Configure Registry
@@ -69,19 +69,19 @@ RegLoadHives
// Add to system PATH
RegRead,HKLM,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path",%SysPath%
StrFormat,CTrim,%SysPath%,";",%SysPath%
RegWrite,HKLM,0x2,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
RegWrite,HKLM,REG_EXPAND_SZ,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
// Add version to reg for other programs to detect
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,0x1,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,REG_SZ,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
Else,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
RegUnloadHives
@@ -185,7 +185,7 @@ btn_SetDefaultOptions=,1,8,543,5,25,25,SetDefaultOptions,SetDefaults_16.png,True
btn_AdvancedOptions=,1,8,574,5,25,25,ToggleAdvancedOptions,Advanced_Disabled_16.png,True,"__Show Advanced Options"
btn_ScriptInfo=,1,8,605,5,25,25,ShowScriptInfo,Help_16.png,True,"__Script Info"
lbl_NetVer="This script will add the .NET 5 Desktop Runtime.",1,1,5,50,518,17,8,Bold
lbl_RuntimeNotes="The .Net 5 release has reached end of life, and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
lbl_RuntimeNotes="The .Net 5 release has reached end of life and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
[AuthorEncoded]
dotnet6.png=1357,1904
@@ -34,8 +34,8 @@ Description=(v6.0.36) .NET 6 is a cross-platform software development framework
Selected=False
Level=4
Author=Homes32
Version=1.0.13.0
Date=2025-06-25
Version=1.0.15.0
Date=2025-12-05
Mandatory=False
[Variables]
@@ -54,12 +54,12 @@ If,Not,ExistFile,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersio
///////////////////////////////////////////////////////////////////////////////////
// Extract Files
Echo,"Extracting files..."
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
///////////////////////////////////////////////////////////////////////////////////
// Configure Registry
@@ -69,19 +69,19 @@ RegLoadHives
// Add to system PATH
RegRead,HKLM,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path",%SysPath%
StrFormat,CTrim,%SysPath%,";",%SysPath%
RegWrite,HKLM,0x2,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
RegWrite,HKLM,REG_EXPAND_SZ,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
// Add version to reg for other programs to detect
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,0x1,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,REG_SZ,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
Else,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
RegUnloadHives
@@ -185,7 +185,7 @@ btn_SetDefaultOptions=,1,8,543,5,25,25,SetDefaultOptions,SetDefaults_16.png,True
btn_AdvancedOptions=,1,8,574,5,25,25,ToggleAdvancedOptions,Advanced_Disabled_16.png,True,"__Show Advanced Options"
btn_ScriptInfo=,1,8,605,5,25,25,ShowScriptInfo,Help_16.png,True,"__Script Info"
lbl_Net6="This script will add the .NET 6 Desktop Runtime.",1,1,5,50,518,49,8,Bold
lbl_RuntimeNotes="The .Net 6 release has reached end of life, and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
lbl_RuntimeNotes="The .Net 6 release has reached end of life and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
[AuthorEncoded]
dotnet6.png=1357,1904
@@ -34,8 +34,8 @@ Description=(v7.0.20) .NET 7 is a cross-platform software development framework
Selected=False
Level=4
Author=Homes32
Version=1.0.1.0
Date=2025-06-25
Version=1.0.3.0
Date=2025-12-05
Mandatory=False
[Variables]
@@ -54,12 +54,12 @@ If,Not,ExistFile,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersio
///////////////////////////////////////////////////////////////////////////////////
// Extract Files
Echo,"Extracting files..."
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
///////////////////////////////////////////////////////////////////////////////////
// Configure Registry
@@ -69,19 +69,19 @@ RegLoadHives
// Add to system PATH
RegRead,HKLM,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path",%SysPath%
StrFormat,CTrim,%SysPath%,";",%SysPath%
RegWrite,HKLM,0x2,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
RegWrite,HKLM,REG_EXPAND_SZ,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
// Add version to reg for other programs to detect
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,0x1,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,REG_SZ,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
Else,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
RegUnloadHives
@@ -185,7 +185,7 @@ btn_SetDefaultOptions=,1,8,543,5,25,25,SetDefaultOptions,SetDefaults_16.png,True
btn_AdvancedOptions=,1,8,574,5,25,25,ToggleAdvancedOptions,Advanced_Disabled_16.png,True,"__Show Advanced Options"
btn_ScriptInfo=,1,8,605,5,25,25,ShowScriptInfo,Help_16.png,True,"__Script Info"
lbl_NetVer="This script will add the .NET 7 Desktop Runtime.",1,1,5,50,518,17,8,Bold
lbl_RuntimeNotes="The .Net 7 release has reached end of life, and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
lbl_RuntimeNotes="The .Net 7 release has reached end of life and is no longer supported by Microsoft.#$x#$xWe recommend moving to a supported release if possible and only enabling this script if you need to run an older program that has not been upgraded to a supported version of .Net.",1,1,5,70,499,89,8,Normal
[AuthorEncoded]
dotnet6.png=1357,1904
@@ -31,17 +31,17 @@
[Main]
Title=.NET 8
Selected=False
Description=(v8.0.20) .NET 8 is a cross-platform software development framework for building and running applications.
Description=(v8.0.22) .NET 8 is a cross-platform software development framework for building and running applications.
Level=4
Author=Homes32
Version=1.0.8.0
Date=2025-09-15
Version=1.0.10.0
Date=2025-12-05
Mandatory=False
[Variables]
%ProgramTitle%=".NET 8 Desktop Runtime"
%ProgramFolder%="dotnet"
%ProgramVersion%="8.0.20"
%ProgramVersion%="8.0.22"
%DownloadURLx86%=https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/%ProgramVersion%/windowsdesktop-runtime-%ProgramVersion%-win-x86.exe
%DownloadURLx64%=https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/%ProgramVersion%/windowsdesktop-runtime-%ProgramVersion%-win-x64.exe
@@ -54,12 +54,12 @@ If,Not,ExistFile,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersio
///////////////////////////////////////////////////////////////////////////////////
// Extract Files
Echo,"Extracting files..."
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
///////////////////////////////////////////////////////////////////////////////////
// Configure Registry
@@ -69,19 +69,19 @@ RegLoadHives
// Add to system PATH
RegRead,HKLM,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path",%SysPath%
StrFormat,CTrim,%SysPath%,";",%SysPath%
RegWrite,HKLM,0x2,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
RegWrite,HKLM,REG_EXPAND_SZ,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
// Add version to reg for other programs to detect
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,0x1,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,REG_SZ,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
Else,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
RegUnloadHives
@@ -30,18 +30,18 @@
[Main]
Title=.NET 9
Description=(v9.0.9) .NET 9 is a cross-platform software development framework for building and running applications.
Description=(v9.0.11) .NET 9 is a cross-platform software development framework for building and running applications.
Selected=False
Level=4
Author=Homes32
Version=1.0.5.0
Date=2025-09-15
Version=1.0.7.0
Date=2025-12-05
Mandatory=False
[Variables]
%ProgramTitle%=".NET 9 Desktop Runtime"
%ProgramFolder%="dotnet"
%ProgramVersion%="9.0.9"
%ProgramVersion%="9.0.11"
%DownloadURLx86%=https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/%ProgramVersion%/windowsdesktop-runtime-%ProgramVersion%-win-x86.exe
%DownloadURLx64%=https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/%ProgramVersion%/windowsdesktop-runtime-%ProgramVersion%-win-x64.exe
@@ -54,12 +54,12 @@ If,Not,ExistFile,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersio
///////////////////////////////////////////////////////////////////////////////////
// Extract Files
Echo,"Extracting files..."
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\AttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
WixExtract,"%ProgramsCache%\%ProgramFolder%\desktop-runtime-%ProgramVersion%-%SourceArch%.exe","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-host-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-hostfxr-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\dotnet-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
MSIExtract,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\WixAttachedContainer\windowsdesktop-runtime-%ProgramVersion%-win-%SourceArch%.msi","%ProjectTemp%\%ProgramFolder%\%ProgramVersion%"
FileCopy,"%ProjectTemp%\%ProgramFolder%\%ProgramVersion%\SourceDir\dotnet\*.*","%TargetPrograms%\%ProgramFolder%"
///////////////////////////////////////////////////////////////////////////////////
// Configure Registry
@@ -69,19 +69,19 @@ RegLoadHives
// Add to system PATH
RegRead,HKLM,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path",%SysPath%
StrFormat,CTrim,%SysPath%,";",%SysPath%
RegWrite,HKLM,0x2,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
RegWrite,HKLM,REG_EXPAND_SZ,"Tmp_System\ControlSet001\Control\Session Manager\Environment","Path","%SysPath%;%PEPrograms%\dotnet\;"
// Add version to reg for other programs to detect
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,0x1,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x64",%ProgramVersion%,1
RegWrite,HKLM,REG_SZ,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64","InstallLocation","%PEPrograms%\dotnet\"
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
Else,Begin
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,0x4,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App",%ProgramVersion%,1
RegWrite,HKLM,REG_DWORD,"Tmp_Software\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.WindowsDesktop.App",%ProgramVersion%,1
End
RegUnloadHives