aboutsummaryrefslogtreecommitdiff
path: root/src/wixlib/NetFx46.wxs
blob: a874ed95146c73668d27a329af73c37b8292612e (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
109
110
111
112
113
<?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 - http://msdn.microsoft.com/en-us/library/w0x726c2(v=vs.110).aspx
    -->

  <?define NetFx46MinRelease = 393295 ?>
  <?define NetFx46WebLink = http://go.microsoft.com/fwlink/?LinkId=560371 ?>
  <?define NetFx46RedistLink = http://go.microsoft.com/fwlink/?LinkId=560369 ?>
  <?define NetFx46EulaLink = http://go.microsoft.com/fwlink/?LinkID=558772 ?>
  <?define NetFx46WebId = NetFx46Web ?>
  <?define NetFx46RedistId = NetFx46Redist ?>

  <Fragment>
    <PropertyRef Id="WIXNETFX4RELEASEINSTALLED" />
    <Property Id="WIX_IS_NETFRAMEWORK_46_OR_LATER_INSTALLED" Secure="yes" />
    <SetProperty Id="WIX_IS_NETFRAMEWORK_46_OR_LATER_INSTALLED" Value="1" After="AppSearch">
      WIXNETFX4RELEASEINSTALLED >= "#$(var.NetFx46MinRelease)"
    </SetProperty>
  </Fragment>

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

    <WixVariable Id="NetFx46WebDetectCondition" Value="NETFRAMEWORK45 &gt;= $(var.NetFx46MinRelease)" Overridable="yes" />
    <WixVariable Id="NetFx46WebInstallCondition" Value="" Overridable="yes" />
    <WixVariable Id="NetFx46WebPackageDirectory" Value="redist\" Overridable="yes" />

    <PackageGroup Id="$(var.NetFx46WebId)">
      <ExePackage
          InstallCommand="/q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          RepairCommand="/q /norestart /repair /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          UninstallCommand="/uninstall /q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          PerMachine="yes"
          DetectCondition="!(wix.NetFx46WebDetectCondition)"
          InstallCondition="!(wix.NetFx46WebInstallCondition)"
          Id="$(var.NetFx46WebId)"
          Vital="yes"
          Permanent="yes"
          Protocol="netfx4"
          DownloadUrl="$(var.NetFx46WebLink)"
          LogPathVariable="NetFx46FullLog"
          Compressed="no"
          Name="!(wix.NetFx46WebPackageDirectory)NDP46-KB3045560-Web.exe">
        <RemotePayload 
          CertificatePublicKey="52868DFCA6E3AF2632389E6C1EE7D0468D3797D0" 
          CertificateThumbprint="3BDA323E552DB1FDE5F4FBEE75D6D5B2B187EEDC" 
          Description="Microsoft .NET Framework 4.6 Setup" 
          Hash="480CA134B9E3F2437DF10719D5A8C77DDEC0A4F1" 
          ProductName="Microsoft .NET Framework 4.6" 
          Size="1497400" 
          Version="4.6.81.0" />
      </ExePackage>
    </PackageGroup>
  </Fragment>

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

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

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

    <WixVariable Id="NetFx46RedistDetectCondition" Value="NETFRAMEWORK45 &gt;= $(var.NetFx46MinRelease)" Overridable="yes" />
    <WixVariable Id="NetFx46RedistInstallCondition" Value="" Overridable="yes" />
    <WixVariable Id="NetFx46RedistPackageDirectory" Value="redist\" Overridable="yes" />

    <PackageGroup Id="$(var.NetFx46RedistId)">
      <ExePackage
          InstallCommand="/q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          RepairCommand="/q /norestart /repair /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          UninstallCommand="/uninstall /q /norestart /ChainingPackage &quot;[WixBundleName]&quot; /log &quot;[NetFx46FullLog].html&quot;"
          PerMachine="yes"
          DetectCondition="!(wix.NetFx46RedistDetectCondition)"
          InstallCondition="!(wix.NetFx46RedistInstallCondition)"
          Id="$(var.NetFx46RedistId)"
          Vital="yes"
          Permanent="yes"
          Protocol="netfx4"
          DownloadUrl="$(var.NetFx46RedistLink)"
          LogPathVariable="NetFx46FullLog"
          Compressed="no"
          Name="!(wix.NetFx46RedistPackageDirectory)NDP46-KB3045557-x86-x64-AllOS-ENU.exe">
        <RemotePayload
          CertificatePublicKey="52868DFCA6E3AF2632389E6C1EE7D0468D3797D0" 
          CertificateThumbprint="3BDA323E552DB1FDE5F4FBEE75D6D5B2B187EEDC" 
          Description="Microsoft .NET Framework 4.6 Setup" 
          Hash="3049A85843EAF65E89E2336D5FE6E85E416797BE" 
          ProductName="Microsoft .NET Framework 4.6" 
          Size="65444688" 
          Version="4.6.81.0" />
      </ExePackage>
    </PackageGroup>
  </Fragment>

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

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