Add support for .NET Framework 4.7.2 and .NET Framework 4.8 to NetFxExtension. Based on https://github.com/wixtoolset/wix4/pull/267
Add support for .NET Framework 4.7.2 and .NET Framework 4.8 to NetFxExtension. Based on https://github.com/wixtoolset/wix4/pull/267
FroggieFrog committed
Jan 15, 2020 at 14:22 UTC
2dc387030d10478d413cfae5bf2f18abd25f1a51
3 files changed
+198
src/wixlib/NetFx472.wxs
new
+98
@@ -0,0 +1,98 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<!-- 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. -->
3
+
4
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
5
+
6
+ <!--
7
+ .NET Framework installation state properties
8
+ Official documentation can be found at the following location:
9
+ .NET Framework 4.5/4.5.1/4.5.2/4.6/4.6.1/4.6.2/4.7/4.7.1/4.7.2 - https://msdn.microsoft.com/en-us/library/w0x726c2(v=vs.110).aspx
10
+ -->
11
+
12
+ <?define NetFx472MinRelease = 461808 ?>
13
+ <?define NetFx472WebLink = https://go.microsoft.com/fwlink/?LinkId=863262 ?>
14
+ <?define NetFx472RedistLink = https://go.microsoft.com/fwlink/?LinkId=863265 ?>
15
+ <?define NetFx472EulaLink = https://referencesource.microsoft.com/license.html ?>
16
+
17
+ <Fragment>
18
+ <PropertyRef Id="WIXNETFX4RELEASEINSTALLED" />
19
+ <Property Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" Secure="yes" />
20
+ <SetProperty Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" Value="1" After="AppSearch">
21
+ WIXNETFX4RELEASEINSTALLED >= "#$(var.NetFx472MinRelease)"
22
+ </SetProperty>
23
+ </Fragment>
24
+
25
+ <Fragment>
26
+ <util:RegistrySearchRef Id="NETFRAMEWORK45"/>
27
+
28
+ <WixVariable Id="WixMbaPrereqPackageId" Value="NetFx472Web" />
29
+ <WixVariable Id="WixMbaPrereqLicenseUrl" Value="$(var.NetFx472EulaLink)" Overridable="yes" />
30
+ <WixVariable Id="NetFx472WebDetectCondition" Value="NETFRAMEWORK45 >= $(var.NetFx472MinRelease)" Overridable="yes" />
31
+ <WixVariable Id="NetFx472WebInstallCondition" Value="" Overridable="yes" />
32
+ <WixVariable Id="NetFx472WebPackageDirectory" Value="redist\" Overridable="yes" />
33
+
34
+ <PackageGroup Id="NetFx472Web">
35
+ <ExePackage
36
+ InstallCommand="/q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
37
+ RepairCommand="/q /norestart /repair /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
38
+ UninstallCommand="/uninstall /q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
39
+ PerMachine="yes"
40
+ DetectCondition="!(wix.NetFx472WebDetectCondition)"
41
+ InstallCondition="!(wix.NetFx472WebInstallCondition)"
42
+ Id="NetFx472Web"
43
+ Vital="yes"
44
+ Permanent="yes"
45
+ Protocol="netfx4"
46
+ DownloadUrl="$(var.NetFx472WebLink)"
47
+ LogPathVariable="NetFx472FullLog"
48
+ Compressed="no"
49
+ Name="!(wix.NetFx472WebPackageDirectory)NDP472-KB4054531-Web.exe">
50
+ <RemotePayload
51
+ CertificatePublicKey="C090C1A2CAFA9B967D9C87C7FE02F7C01FBDE4F2"
52
+ CertificateThumbprint="5EAD300DC7E4D637948ECB0ED829A072BD152E17"
53
+ Description="Microsoft .NET Framework 4.7.2 Setup"
54
+ Hash="507ECDADC23A27C2283BA130A2AA51650E6BC05B"
55
+ ProductName="Microsoft .NET Framework 4.7.2"
56
+ Size="1447320"
57
+ Version="4.7.3062.0" />
58
+ </ExePackage>
59
+ </PackageGroup>
60
+ </Fragment>
61
+
62
+ <Fragment>
63
+ <util:RegistrySearchRef Id="NETFRAMEWORK45"/>
64
+
65
+ <WixVariable Id="WixMbaPrereqPackageId" Value="NetFx472Redist" />
66
+ <WixVariable Id="WixMbaPrereqLicenseUrl" Value="$(var.NetFx472EulaLink)" Overridable="yes" />
67
+ <WixVariable Id="NetFx472RedistDetectCondition" Value="NETFRAMEWORK45 >= $(var.NetFx472MinRelease)" Overridable="yes" />
68
+ <WixVariable Id="NetFx472RedistInstallCondition" Value="" Overridable="yes" />
69
+ <WixVariable Id="NetFx472RedistPackageDirectory" Value="redist\" Overridable="yes" />
70
+
71
+ <PackageGroup Id="NetFx472Redist">
72
+ <ExePackage
73
+ InstallCommand="/q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
74
+ RepairCommand="/q /norestart /repair /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
75
+ UninstallCommand="/uninstall /q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx472FullLog].html""
76
+ PerMachine="yes"
77
+ DetectCondition="!(wix.NetFx472RedistDetectCondition)"
78
+ InstallCondition="!(wix.NetFx472RedistInstallCondition)"
79
+ Id="NetFx472Redist"
80
+ Vital="yes"
81
+ Permanent="yes"
82
+ Protocol="netfx4"
83
+ DownloadUrl="$(var.NetFx472RedistLink)"
84
+ LogPathVariable="NetFx472FullLog"
85
+ Compressed="no"
86
+ Name="!(wix.NetFx472RedistPackageDirectory)NDP472-KB4054530-x86-x64-AllOS-ENU.exe">
87
+ <RemotePayload
88
+ CertificatePublicKey="C090C1A2CAFA9B967D9C87C7FE02F7C01FBDE4F2"
89
+ CertificateThumbprint="5EAD300DC7E4D637948ECB0ED829A072BD152E17"
90
+ Description="Microsoft .NET Framework 4.7.2 Setup"
91
+ Hash="D3A416DC5FC75758D41B4C0158ACA69270D2A904"
92
+ ProductName="Microsoft .NET Framework 4.7.2"
93
+ Size="71607232"
94
+ Version="4.7.3062.0" />
95
+ </ExePackage>
96
+ </PackageGroup>
97
+ </Fragment>
98
+</Wix>
src/wixlib/NetFx48.wxs
new
+98
@@ -0,0 +1,98 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<!-- 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. -->
3
+
4
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
5
+
6
+ <!--
7
+ .NET Framework installation state properties
8
+ Official documentation can be found at the following location:
9
+ .NET Framework 4.5/4.5.1/4.5.2/4.6/4.6.1/4.6.2/4.7/4.7.1/4.7.2/4.8 - https://msdn.microsoft.com/en-us/library/w0x726c2(v=vs.110).aspx
10
+ -->
11
+
12
+ <?define NetFx48MinRelease = 528040 ?>
13
+ <?define NetFx48WebLink = https://go.microsoft.com/fwlink/?LinkId=2085155 ?>
14
+ <?define NetFx48RedistLink = https://go.microsoft.com/fwlink/?linkid=2088631 ?>
15
+ <?define NetFx48EulaLink = https://referencesource.microsoft.com/license.html ?>
16
+
17
+ <Fragment>
18
+ <PropertyRef Id="WIXNETFX4RELEASEINSTALLED" />
19
+ <Property Id="WIX_IS_NETFRAMEWORK_48_OR_LATER_INSTALLED" Secure="yes" />
20
+ <SetProperty Id="WIX_IS_NETFRAMEWORK_48_OR_LATER_INSTALLED" Value="1" After="AppSearch">
21
+ WIXNETFX4RELEASEINSTALLED >= "#$(var.NetFx48MinRelease)"
22
+ </SetProperty>
23
+ </Fragment>
24
+
25
+ <Fragment>
26
+ <util:RegistrySearchRef Id="NETFRAMEWORK45"/>
27
+
28
+ <WixVariable Id="WixMbaPrereqPackageId" Value="NetFx48Web" />
29
+ <WixVariable Id="WixMbaPrereqLicenseUrl" Value="$(var.NetFx48EulaLink)" Overridable="yes" />
30
+ <WixVariable Id="NetFx48WebDetectCondition" Value="NETFRAMEWORK45 >= $(var.NetFx48MinRelease)" Overridable="yes" />
31
+ <WixVariable Id="NetFx48WebInstallCondition" Value="" Overridable="yes" />
32
+ <WixVariable Id="NetFx48WebPackageDirectory" Value="redist\" Overridable="yes" />
33
+
34
+ <PackageGroup Id="NetFx48Web">
35
+ <ExePackage
36
+ InstallCommand="/q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
37
+ RepairCommand="/q /norestart /repair /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
38
+ UninstallCommand="/uninstall /q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
39
+ PerMachine="yes"
40
+ DetectCondition="!(wix.NetFx48WebDetectCondition)"
41
+ InstallCondition="!(wix.NetFx48WebInstallCondition)"
42
+ Id="NetFx48Web"
43
+ Vital="yes"
44
+ Permanent="yes"
45
+ Protocol="netfx4"
46
+ DownloadUrl="$(var.NetFx48WebLink)"
47
+ LogPathVariable="NetFx48FullLog"
48
+ Compressed="no"
49
+ Name="!(wix.NetFx48WebPackageDirectory)ndp48-web.exe">
50
+ <RemotePayload
51
+ CertificatePublicKey="793980B0038EBF0A88DAA08420FD3E66F53CC0CE"
52
+ CertificateThumbprint="9DC17888B5CFAD98B3CB35C1994E96227F061675"
53
+ Description="Microsoft .NET Framework 4.8 Setup"
54
+ Hash="755349ECD6A478FE010E466B29911D2388F6CE94"
55
+ ProductName="Microsoft .NET Framework 4.8"
56
+ Size="1486376"
57
+ Version="4.8.3761.0" />
58
+ </ExePackage>
59
+ </PackageGroup>
60
+ </Fragment>
61
+
62
+ <Fragment>
63
+ <util:RegistrySearchRef Id="NETFRAMEWORK45"/>
64
+
65
+ <WixVariable Id="WixMbaPrereqPackageId" Value="NetFx48Redist" />
66
+ <WixVariable Id="WixMbaPrereqLicenseUrl" Value="$(var.NetFx48EulaLink)" Overridable="yes" />
67
+ <WixVariable Id="NetFx48RedistDetectCondition" Value="NETFRAMEWORK45 >= $(var.NetFx48MinRelease)" Overridable="yes" />
68
+ <WixVariable Id="NetFx48RedistInstallCondition" Value="" Overridable="yes" />
69
+ <WixVariable Id="NetFx48RedistPackageDirectory" Value="redist\" Overridable="yes" />
70
+
71
+ <PackageGroup Id="NetFx48Redist">
72
+ <ExePackage
73
+ InstallCommand="/q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
74
+ RepairCommand="/q /norestart /repair /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
75
+ UninstallCommand="/uninstall /q /norestart /ChainingPackage "[WixBundleName]" /log "[NetFx48FullLog].html""
76
+ PerMachine="yes"
77
+ DetectCondition="!(wix.NetFx48RedistDetectCondition)"
78
+ InstallCondition="!(wix.NetFx48RedistInstallCondition)"
79
+ Id="NetFx48Redist"
80
+ Vital="yes"
81
+ Permanent="yes"
82
+ Protocol="netfx4"
83
+ DownloadUrl="$(var.NetFx48RedistLink)"
84
+ LogPathVariable="NetFx48FullLog"
85
+ Compressed="no"
86
+ Name="!(wix.NetFx48RedistPackageDirectory)ndp48-x86-x64-allos-enu.exe">
87
+ <RemotePayload
88
+ CertificatePublicKey="793980B0038EBF0A88DAA08420FD3E66F53CC0CE"
89
+ CertificateThumbprint="9DC17888B5CFAD98B3CB35C1994E96227F061675"
90
+ Description="Microsoft .NET Framework 4.8 Setup"
91
+ Hash="0D425249D42A01E7AB3AC243152FA7773C43F0BF"
92
+ ProductName="Microsoft .NET Framework 4.8"
93
+ Size="72721568"
94
+ Version="4.8.3761.0" />
95
+ </ExePackage>
96
+ </PackageGroup>
97
+ </Fragment>
98
+</Wix>
src/wixlib/netfx.wixproj
+2
@@ -11,6 +11,8 @@
11
<Pedantic>true</Pedantic>
12
</PropertyGroup>
13
<ItemGroup>
14
+ <Compile Include="NetFx472.wxs" />
15
+ <Compile Include="NetFx48.wxs" />
16
<Compile Include="NetFxExtension.wxs" />
17
<Compile Include="NetFx1.wxs" />
18
<Compile Include="NetFx1.1.wxs" />