aboutsummaryrefslogtreecommitdiff
path: root/src/wixlib/NetFx472.wxs
blob: 5aaa19768cf5688a0847418e8a56ceffaa1665d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?xml version="1.0" encoding="utf-8"?>
<!-- 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. -->

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
     xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"
     xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">

  <!--
        .NET Framework installation state properties
        Official documentation can be found at the following location:
        .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
    -->

  <?define NetFx472MinRelease = 461808 ?>
  <?define NetFx472WebLink = https://go.microsoft.com/fwlink/?LinkId=863262 ?>
  <?define NetFx472RedistLink = https://go.microsoft.com/fwlink/?LinkId=863258 ?>
  <?define NetFx472EulaLink = https://referencesource.microsoft.com/license.html ?>
  <?define NetFx472WebId = NetFx472Web ?>
  <?define NetFx472RedistId = NetFx472Redist ?>

  <Fragment>
    <PropertyRef Id="WIXNETFX4RELEASEINSTALLED" />
    <Property Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" Secure="yes" />
    <SetProperty Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" Value="1" After="AppSearch" Condition="WIXNETFX4RELEASEINSTALLED &gt;= &quot;#$(var.NetFx472MinRelease)&quot;" />
  </Fragment>

  <Fragment>
    <util:RegistrySearchRef Id="NETFRAMEWORK45" />

    <WixVariable Id="NetFx472WebDetectCondition" Value="NETFRAMEWORK45 &gt;= $(var.NetFx472MinRelease)" Overridable="yes" />
    <WixVariable Id="NetFx472WebInstallCondition" Value="" Overridable="yes" />
    <WixVariable Id="NetFx472WebPackageDirectory" Value="redist\" Overridable="yes" />

    <PackageGroup Id="$(var.NetFx472WebId)">
      <ExePackage
          InstallCommand="/q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472WebLog].html&quot;"
          RepairCommand="/q /norestart /repair /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472WebLog].html&quot;"
          UninstallCommand="/uninstall /q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472WebLog].html&quot;"
          PerMachine="yes"
          DetectCondition="!(wix.NetFx472WebDetectCondition)"
          InstallCondition="!(wix.NetFx472WebInstallCondition)"
          Id="$(var.NetFx472WebId)"
          Vital="yes"
          Permanent="yes"
          Protocol="netfx4"
          DownloadUrl="$(var.NetFx472WebLink)"
          LogPathVariable="NetFx472WebLog"
          Compressed="no"
          Name="!(wix.NetFx472WebPackageDirectory)NDP472-KB4054531-Web.exe">
        <RemotePayload
          CertificatePublicKey="C090C1A2CAFA9B967D9C87C7FE02F7C01FBDE4F2"
          CertificateThumbprint="5EAD300DC7E4D637948ECB0ED829A072BD152E17"
          Description="Microsoft .NET Framework 4.7.2 Setup"
          Hash="CEDBBF404B166A5E72D035760BCB0FA508E4F4CB"
          ProductName="Microsoft .NET Framework 4.7.2"
          Size="1432848"
          Version="4.7.3081.0" />
      </ExePackage>
    </PackageGroup>
  </Fragment>

  <Fragment>
    <PackageGroup Id="$(var.NetFx472WebId)AsPrereq" />

    <bal:ManagedBootstrapperApplicationPrereqInformation PackageId="$(var.NetFx472WebId)" LicenseUrl="$(var.NetFx472EulaLink)" />
  </Fragment>

  <Fragment>
    <util:RegistrySearchRef Id="NETFRAMEWORK45" />

    <WixVariable Id="NetFx472RedistDetectCondition" Value="NETFRAMEWORK45 &gt;= $(var.NetFx472MinRelease)" Overridable="yes" />
    <WixVariable Id="NetFx472RedistInstallCondition" Value="" Overridable="yes" />
    <WixVariable Id="NetFx472RedistPackageDirectory" Value="redist\" Overridable="yes" />

    <PackageGroup Id="$(var.NetFx472RedistId)">
      <ExePackage
          InstallCommand="/q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472RedistLog].html&quot;"
          RepairCommand="/q /norestart /repair /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472RedistLog].html&quot;"
          UninstallCommand="/uninstall /q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx472RedistLog].html&quot;"
          PerMachine="yes"
          DetectCondition="!(wix.NetFx472RedistDetectCondition)"
          InstallCondition="!(wix.NetFx472RedistInstallCondition)"
          Id="$(var.NetFx472RedistId)"
          Vital="yes"
          Permanent="yes"
          Protocol="netfx4"
          DownloadUrl="$(var.NetFx472RedistLink)"
          LogPathVariable="NetFx472RedistLog"
          Compressed="no"
          Name="!(wix.NetFx472RedistPackageDirectory)NDP472-KB4054530-x86-x64-AllOS-ENU.exe">
        <RemotePayload
          CertificatePublicKey="C090C1A2CAFA9B967D9C87C7FE02F7C01FBDE4F2"
          CertificateThumbprint="5EAD300DC7E4D637948ECB0ED829A072BD152E17"
          Description="Microsoft .NET Framework 4.7.2 Setup"
          Hash="31FC0D305A6F651C9E892C98EB10997AE885EB1E"
          ProductName="Microsoft .NET Framework 4.7.2"
          Size="83943272"
          Version="4.7.3081.0" />
      </ExePackage>
    </PackageGroup>
  </Fragment>

  <Fragment>
    <PackageGroup Id="$(var.NetFx472RedistId)AsPrereq" />

    <bal:ManagedBootstrapperApplicationPrereqInformation PackageId="$(var.NetFx472RedistId)" LicenseUrl="$(var.NetFx472EulaLink)" />
  </Fragment>
</Wix>