aboutsummaryrefslogtreecommitdiff
path: root/src/ext
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext')
-rw-r--r--src/ext/Bal/README.md60
-rw-r--r--src/ext/Bal/bal_t.proj6
-rw-r--r--src/ext/Bal/test/WixToolsetTest.BootstrapperApplications/BalExtensionFixture.cs4
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleSCD/EarliestCoreBundleSCD.wixproj10
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleSCD/SelfContainedBundle.wxs8
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleSCD/ba.xslt15
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/EarliestCoreBundleTrimmedSCD.wixproj10
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs8
-rw-r--r--src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/ba.xslt15
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleSCD/LatestCoreBundleSCD.wixproj10
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleSCD/SelfContainedBundle.wxs8
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleSCD/ba.xslt15
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/LatestCoreBundleTrimmedSCD.wixproj10
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs8
-rw-r--r--src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/ba.xslt15
-rw-r--r--src/ext/Bal/test/examples/examples.proj6
-rw-r--r--src/ext/Bal/wixext/README.md7
-rw-r--r--src/ext/Bal/wixext/WixToolset.BootstrapperApplications.wixext.csproj2
-rw-r--r--src/ext/Bal/wixstdfn/README.md38
-rw-r--r--src/ext/Bal/wixstdfn/wixstdfn.nuspec2
-rw-r--r--src/ext/ComPlus/README.md54
-rw-r--r--src/ext/ComPlus/complus_t.proj6
-rw-r--r--src/ext/ComPlus/wixext/WixToolset.ComPlus.wixext.csproj5
-rw-r--r--src/ext/Dependency/README.md54
-rw-r--r--src/ext/Dependency/dependency_t.proj6
-rw-r--r--src/ext/Dependency/wixext/WixToolset.Dependency.wixext.csproj5
-rw-r--r--src/ext/DirectX/README.md54
-rw-r--r--src/ext/DirectX/directx_t.proj6
-rw-r--r--src/ext/DirectX/wixext/WixToolset.DirectX.wixext.csproj5
-rw-r--r--src/ext/Firewall/README.md54
-rw-r--r--src/ext/Firewall/firewall_t.proj6
-rw-r--r--src/ext/Firewall/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs41
-rw-r--r--src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/Firewall4.msibin0 -> 196608 bytes
-rw-r--r--src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wixproj6
-rw-r--r--src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wxs36
-rw-r--r--src/ext/Firewall/wixext/FirewallDecompiler.cs31
-rw-r--r--src/ext/Firewall/wixext/WixToolset.Firewall.wixext.csproj5
-rw-r--r--src/ext/Http/README.md54
-rw-r--r--src/ext/Http/http_t.proj6
-rw-r--r--src/ext/Http/test/WixToolsetTest.Http/HttpExtensionFixture.cs4
-rw-r--r--src/ext/Http/wixext/WixToolset.Http.wixext.csproj5
-rw-r--r--src/ext/Iis/README.md54
-rw-r--r--src/ext/Iis/iis_t.proj6
-rw-r--r--src/ext/Iis/wixext/IIsCompiler.cs2
-rw-r--r--src/ext/Iis/wixext/WixToolset.Iis.wixext.csproj5
-rw-r--r--src/ext/Msmq/README.md54
-rw-r--r--src/ext/Msmq/msmq_t.proj6
-rw-r--r--src/ext/Msmq/wixext/WixToolset.Msmq.wixext.csproj5
-rw-r--r--src/ext/NetFx/README.md54
-rw-r--r--src/ext/NetFx/netfx_t.proj6
-rw-r--r--src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs4
-rw-r--r--src/ext/NetFx/wixext/WixToolset.Netfx.wixext.csproj5
-rw-r--r--src/ext/NetFx/wixlib/NetFx48.wxs2
-rw-r--r--src/ext/PowerShell/README.md54
-rw-r--r--src/ext/PowerShell/powershell_t.proj6
-rw-r--r--src/ext/PowerShell/wixext/WixToolset.PowerShell.wixext.csproj5
-rw-r--r--src/ext/Sql/README.md54
-rw-r--r--src/ext/Sql/sql_t.proj6
-rw-r--r--src/ext/Sql/wixext/WixToolset.Sql.wixext.csproj5
-rw-r--r--src/ext/UI/README.md54
-rw-r--r--src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs6
-rw-r--r--src/ext/UI/ui_t.proj6
-rw-r--r--src/ext/UI/wixext/WixToolset.UI.wixext.csproj5
-rw-r--r--src/ext/UI/wixlib/WixUI_FeatureTree.wxs5
-rw-r--r--src/ext/Util/README.md53
-rw-r--r--src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs7
-rw-r--r--src/ext/Util/util_t.proj6
-rw-r--r--src/ext/Util/wixext/UtilDecompiler.cs2
-rw-r--r--src/ext/Util/wixext/WixToolset.Util.wixext.csproj5
-rw-r--r--src/ext/VisualStudio/README.md54
-rw-r--r--src/ext/VisualStudio/visualstudio_t.proj6
-rw-r--r--src/ext/VisualStudio/wixext/WixToolset.VisualStudio.wixext.csproj5
-rw-r--r--src/ext/ext_t.proj21
73 files changed, 1074 insertions, 194 deletions
diff --git a/src/ext/Bal/README.md b/src/ext/Bal/README.md
index 4a14b1a2..009615dd 100644
--- a/src/ext/Bal/README.md
+++ b/src/ext/Bal/README.md
@@ -1,2 +1,58 @@
1# WixToolset.BootstrapperApplications.wixext 1# WixToolset.BootstrapperApplications.wixext - Bootstrapper Applications WiX Toolset Extension
2WixToolset.BootstrapperApplications.wixext - Bootstrapper Applications WiX Toolset Extension 2
3This WiX Extension provides the standard BootstrapperApplications provided by the WiX Toolset.
4
5- WixStdBA ([WixStandardBootstrapperApplication](https://docs.firegiant.com/wix/schema/bal/wixstandardbootstrapperapplication/)), a bootstrapper application with support for custom themes
6- WixIuiBA ([WixInternalUIBootstrapperApplication](https://docs.firegiant.com/wix/schema/bal/wixinternaluibootstrapperapplication/)), a bootstrapper application for showing internal UI of Windows Installer packages
7- WixPreqBA ([WixPrerequisiteBootstrapperApplication](https://docs.firegiant.com/wix/schema/bal/wixprerequisitebootstrapperapplication/)), a secondary bootstrapper application for bootstrapping the prerequisites needed for a primary bootstrapper application
8
9[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
10
11## Open Source Maintenance Fee
12
13To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
14
15To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
16
17
18## Getting started
19
20Add the WiX Extension as a PackageReference to your .wixproj:
21
22```
23<Project Sdk="WixToolset.Sdk/7.0.0">
24 <ItemGroup>
25 <PackageReference Include="WixToolset.BootstrapperApplications.wixext" Version="7.0.0" />
26 </ItemGroup>
27</Project>
28```
29
30Then add the namespace and bootstrapper application of choice:
31
32```
33<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
34 xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
35 <Bundle BundleId="AcmeCorp.Example" Name="Example Bundle" Version="0.0.0.1" Manufacturer="ACME Corporation">
36 <BootstrapperApplication>
37 <bal:WixStandardBootstrapperApplication LicenseUrl="http://wixtoolset.org/about/license/" Theme="hyperlinkLicense" />
38 </BootstrapperApplication>
39 </Bundle>
40</Wix>
41```
42
43## Additional resources
44
45* [WiX Website][web]
46* [WiX Documentation][docs]
47* [WiX Issue Tracker][issues]
48* [WiX Discussions][discussions]
49
50
51[web]: https://www.firegiant.com/wixtoolset/
52[docs]: https://docs.firegiant.com/wixtoolset/
53[issues]: https://github.com/wixtoolset/issues/issues
54[discussions]: https://github.com/orgs/wixtoolset/discussions
55[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
56[osmf]: https://opensourcemaintenancefee.org/
57[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
58[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Bal/bal_t.proj b/src/ext/Bal/bal_t.proj
index bb8d44a2..80da207d 100644
--- a/src/ext/Bal/bal_t.proj
+++ b/src/ext/Bal/bal_t.proj
@@ -18,7 +18,7 @@
18 18
19 <ProjectReference Include="test\examples\examples.proj" /> 19 <ProjectReference Include="test\examples\examples.proj" />
20 20
21 <ProjectReference Include="test\WixToolsetTest.BootstrapperApplications\WixToolsetTest.BootstrapperApplications.csproj" Targets="Test" /> 21 <ProjectReference Include="test\WixToolsetTest.BootstrapperApplications\WixToolsetTest.BootstrapperApplications.csproj" />
22 22
23 <!-- 23 <!--
24 Currently there are no unskipped unit tests in this project. Should that change, 24 Currently there are no unskipped unit tests in this project. Should that change,
@@ -41,4 +41,8 @@
41 <Delete Files="$(ArtifactsFolder)WixToolset.BootstrapperApplications.wixext.*.nupkg" /> 41 <Delete Files="$(ArtifactsFolder)WixToolset.BootstrapperApplications.wixext.*.nupkg" />
42 <Delete Files="$(ArtifactsFolder)WixToolset.WixStandardBootstrapperApplicationFunctionApi.wixext.*.nupkg" /> 42 <Delete Files="$(ArtifactsFolder)WixToolset.WixStandardBootstrapperApplicationFunctionApi.wixext.*.nupkg" />
43 </Target> 43 </Target>
44
45 <Target Name="WixTest">
46 <MSBuild Projects="test\WixToolsetTest.BootstrapperApplications\WixToolsetTest.BootstrapperApplications.csproj" Targets="Test" />
47 </Target>
44</Project> 48</Project>
diff --git a/src/ext/Bal/test/WixToolsetTest.BootstrapperApplications/BalExtensionFixture.cs b/src/ext/Bal/test/WixToolsetTest.BootstrapperApplications/BalExtensionFixture.cs
index 6e24ad72..07d3dacb 100644
--- a/src/ext/Bal/test/WixToolsetTest.BootstrapperApplications/BalExtensionFixture.cs
+++ b/src/ext/Bal/test/WixToolsetTest.BootstrapperApplications/BalExtensionFixture.cs
@@ -1,5 +1,9 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.BootstrapperApplications 7namespace WixToolsetTest.BootstrapperApplications
4{ 8{
5 using System; 9 using System;
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/EarliestCoreBundleSCD.wixproj b/src/ext/Bal/test/examples/EarliestCoreBundleSCD/EarliestCoreBundleSCD.wixproj
index 1179bea7..aea77d1b 100644
--- a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/EarliestCoreBundleSCD.wixproj
+++ b/src/ext/Bal/test/examples/EarliestCoreBundleSCD/EarliestCoreBundleSCD.wixproj
@@ -1,14 +1,6 @@
1<!-- 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. --> 1<!-- 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. -->
2<Project Sdk="WixToolset.Sdk"> 2<Project Sdk="WixToolset.Sdk">
3 <ItemGroup> 3 <ItemGroup>
4 <BindPath Include="$(OutputPath)publish\Example.EarliestCoreMBA\scd" /> 4 <BindPath Include="$(OutputPath)publish\Example.EarliestCoreMBA\scd" BindName="ba.payloads" />
5 <HarvestDirectory Include="$(OutputPath)publish\Example.EarliestCoreMBA\scd">
6 <DirectoryRefId>publish.Example.EarliestCoreMBA.scd</DirectoryRefId>
7 <Transforms>ba.xslt</Transforms>
8 </HarvestDirectory>
9 </ItemGroup>
10
11 <ItemGroup>
12 <PackageReference Include="WixToolset.Heat" />
13 </ItemGroup> 5 </ItemGroup>
14</Project> 6</Project>
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/SelfContainedBundle.wxs b/src/ext/Bal/test/examples/EarliestCoreBundleSCD/SelfContainedBundle.wxs
index 38a167f1..68b697e7 100644
--- a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/SelfContainedBundle.wxs
+++ b/src/ext/Bal/test/examples/EarliestCoreBundleSCD/SelfContainedBundle.wxs
@@ -1,9 +1,11 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"> 1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
2 <Bundle Name="SCDEarliestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533"> 2 <Bundle Name="SCDEarliestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533">
3 <BootstrapperApplication SourceFile="Example.EarliestCoreMBA.exe"> 3 <BootstrapperApplication SourceFile="!(bindpath.ba.payloads)\Example.EarliestCoreMBA.exe">
4 <!-- <bal:WixDotNetCoreBootstrapperApplicationHost SelfContainedDeployment="yes" /> --> 4 <Payloads Include="!(bindpath.ba.payloads)\**">
5 <PayloadGroupRef Id="publish.Example.EarliestCoreMBA.scd" /> 5 <Exclude Files="!(bindpath.ba.payloads)\Example.EarliestCoreMBA.exe" />
6 </Payloads>
6 </BootstrapperApplication> 7 </BootstrapperApplication>
8
7 <Chain> 9 <Chain>
8 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" /> 10 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" />
9 </Chain> 11 </Chain>
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/ba.xslt b/src/ext/Bal/test/examples/EarliestCoreBundleSCD/ba.xslt
deleted file mode 100644
index d30b2564..00000000
--- a/src/ext/Bal/test/examples/EarliestCoreBundleSCD/ba.xslt
+++ /dev/null
@@ -1,15 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
4 xmlns:wix="http://wixtoolset.org/schemas/v4/wxs"
5>
6 <xsl:output method="xml" indent="yes"/>
7
8 <xsl:template match="@* | node()">
9 <xsl:copy>
10 <xsl:apply-templates select="@* | node()"/>
11 </xsl:copy>
12 </xsl:template>
13
14 <xsl:template match="wix:Payload[@SourceFile='SourceDir\Example.EarliestCoreMBA.exe']" />
15</xsl:stylesheet>
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/EarliestCoreBundleTrimmedSCD.wixproj b/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/EarliestCoreBundleTrimmedSCD.wixproj
index f9926550..5475022c 100644
--- a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/EarliestCoreBundleTrimmedSCD.wixproj
+++ b/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/EarliestCoreBundleTrimmedSCD.wixproj
@@ -1,14 +1,6 @@
1<!-- 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. --> 1<!-- 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. -->
2<Project Sdk="WixToolset.Sdk"> 2<Project Sdk="WixToolset.Sdk">
3 <ItemGroup> 3 <ItemGroup>
4 <BindInputPaths Include="$(OutputPath)publish\Example.EarliestCoreMBA\trimmedscd" /> 4 <BindInputPaths Include="$(OutputPath)publish\Example.EarliestCoreMBA\trimmedscd" BindName="ba.payloads" />
5 <HarvestDirectory Include="$(OutputPath)publish\Example.EarliestCoreMBA\trimmedscd">
6 <DirectoryRefId>publish.Example.EarliestCoreMBA.trimmedscd</DirectoryRefId>
7 <Transforms>ba.xslt</Transforms>
8 </HarvestDirectory>
9 </ItemGroup>
10
11 <ItemGroup>
12 <PackageReference Include="WixToolset.Heat" />
13 </ItemGroup> 5 </ItemGroup>
14</Project> 6</Project>
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs b/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
index bf4ad6e3..8895b279 100644
--- a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
+++ b/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
@@ -1,9 +1,11 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"> 1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
2 <Bundle Name="TrimmedSCDEarliestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533"> 2 <Bundle Name="TrimmedSCDEarliestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533">
3 <BootstrapperApplication SourceFile="SourceDir\Example.EarliestCoreMBA.exe" > 3 <BootstrapperApplication SourceFile="!(bindpath.ba.payloads)\Example.EarliestCoreMBA.exe" >
4 <!-- <bal:WixDotNetCoreBootstrapperApplicationHost SelfContainedDeployment="yes" /> --> 4 <Payloads Include="!(bindpath.ba.payloads)\**">
5 <PayloadGroupRef Id="publish.Example.EarliestCoreMBA.trimmedscd" /> 5 <Exclude Files="!(bindpath.ba.payloads)\Example.EarliestCoreMBA.exe" />
6 </Payloads>
6 </BootstrapperApplication> 7 </BootstrapperApplication>
8
7 <Chain> 9 <Chain>
8 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" /> 10 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" />
9 </Chain> 11 </Chain>
diff --git a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/ba.xslt b/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/ba.xslt
deleted file mode 100644
index d30b2564..00000000
--- a/src/ext/Bal/test/examples/EarliestCoreBundleTrimmedSCD/ba.xslt
+++ /dev/null
@@ -1,15 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
4 xmlns:wix="http://wixtoolset.org/schemas/v4/wxs"
5>
6 <xsl:output method="xml" indent="yes"/>
7
8 <xsl:template match="@* | node()">
9 <xsl:copy>
10 <xsl:apply-templates select="@* | node()"/>
11 </xsl:copy>
12 </xsl:template>
13
14 <xsl:template match="wix:Payload[@SourceFile='SourceDir\Example.EarliestCoreMBA.exe']" />
15</xsl:stylesheet>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleSCD/LatestCoreBundleSCD.wixproj b/src/ext/Bal/test/examples/LatestCoreBundleSCD/LatestCoreBundleSCD.wixproj
index 048e3c97..73582984 100644
--- a/src/ext/Bal/test/examples/LatestCoreBundleSCD/LatestCoreBundleSCD.wixproj
+++ b/src/ext/Bal/test/examples/LatestCoreBundleSCD/LatestCoreBundleSCD.wixproj
@@ -1,14 +1,6 @@
1<!-- 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. --> 1<!-- 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. -->
2<Project Sdk="WixToolset.Sdk"> 2<Project Sdk="WixToolset.Sdk">
3 <ItemGroup> 3 <ItemGroup>
4 <BindInputPaths Include="$(OutputPath)publish\Example.LatestCoreMBA\scd" /> 4 <BindInputPaths Include="$(OutputPath)publish\Example.LatestCoreMBA\scd" BindName="ba.payloads" />
5 <HarvestDirectory Include="$(OutputPath)publish\Example.LatestCoreMBA\scd">
6 <DirectoryRefId>publish.Example.LatestCoreMBA.scd</DirectoryRefId>
7 <Transforms>ba.xslt</Transforms>
8 </HarvestDirectory>
9 </ItemGroup>
10
11 <ItemGroup>
12 <PackageReference Include="WixToolset.Heat" />
13 </ItemGroup> 5 </ItemGroup>
14</Project> 6</Project>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleSCD/SelfContainedBundle.wxs b/src/ext/Bal/test/examples/LatestCoreBundleSCD/SelfContainedBundle.wxs
index 0022b690..1f379b59 100644
--- a/src/ext/Bal/test/examples/LatestCoreBundleSCD/SelfContainedBundle.wxs
+++ b/src/ext/Bal/test/examples/LatestCoreBundleSCD/SelfContainedBundle.wxs
@@ -1,9 +1,11 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"> 1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
2 <Bundle Name="SCDLatestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533"> 2 <Bundle Name="SCDLatestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533">
3 <BootstrapperApplication SourceFile="Example.LatestCoreMBA.exe"> 3 <BootstrapperApplication SourceFile="!(bindpath.ba.payloads)\Example.LatestCoreMBA.exe">
4 <!-- <bal:WixDotNetCoreBootstrapperApplicationHost SelfContainedDeployment="yes" /> --> 4 <Payloads Include="!(bindpath.ba.payloads)\**">
5 <PayloadGroupRef Id="publish.Example.LatestCoreMBA.scd" /> 5 <Exclude Files="!(bindpath.ba.payloads)\Example.LatestCoreMBA.exe" />
6 </Payloads>
6 </BootstrapperApplication> 7 </BootstrapperApplication>
8
7 <Chain> 9 <Chain>
8 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" /> 10 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" />
9 </Chain> 11 </Chain>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleSCD/ba.xslt b/src/ext/Bal/test/examples/LatestCoreBundleSCD/ba.xslt
deleted file mode 100644
index f606296e..00000000
--- a/src/ext/Bal/test/examples/LatestCoreBundleSCD/ba.xslt
+++ /dev/null
@@ -1,15 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
4 xmlns:wix="http://wixtoolset.org/schemas/v4/wxs"
5>
6 <xsl:output method="xml" indent="yes"/>
7
8 <xsl:template match="@* | node()">
9 <xsl:copy>
10 <xsl:apply-templates select="@* | node()"/>
11 </xsl:copy>
12 </xsl:template>
13
14 <xsl:template match="wix:Payload[@SourceFile='SourceDir\Example.LatestCoreMBA.exe']" />
15</xsl:stylesheet>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/LatestCoreBundleTrimmedSCD.wixproj b/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/LatestCoreBundleTrimmedSCD.wixproj
index 056bf2bb..532f09b4 100644
--- a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/LatestCoreBundleTrimmedSCD.wixproj
+++ b/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/LatestCoreBundleTrimmedSCD.wixproj
@@ -1,14 +1,6 @@
1<!-- 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. --> 1<!-- 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. -->
2<Project Sdk="WixToolset.Sdk"> 2<Project Sdk="WixToolset.Sdk">
3 <ItemGroup> 3 <ItemGroup>
4 <BindInputPaths Include="$(OutputPath)publish\Example.LatestCoreMBA\trimmedscd" /> 4 <BindInputPaths Include="$(OutputPath)publish\Example.LatestCoreMBA\trimmedscd" BindName="ba.payloads" />
5 <HarvestDirectory Include="$(OutputPath)publish\Example.LatestCoreMBA\trimmedscd">
6 <DirectoryRefId>publish.Example.LatestCoreMBA.trimmedscd</DirectoryRefId>
7 <Transforms>ba.xslt</Transforms>
8 </HarvestDirectory>
9 </ItemGroup>
10
11 <ItemGroup>
12 <PackageReference Include="WixToolset.Heat" />
13 </ItemGroup> 5 </ItemGroup>
14</Project> 6</Project>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs b/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
index 322a27a3..cd32628a 100644
--- a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
+++ b/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/TrimmedSelfContainedBundle.wxs
@@ -1,9 +1,11 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"> 1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
2 <Bundle Name="TrimmedSCDLatestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533"> 2 <Bundle Name="TrimmedSCDLatestCoreMBA" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="5CE5B5C7-4B6B-4B95-B297-731F1F956533">
3 <BootstrapperApplication SourceFile="Example.LatestCoreMBA.exe"> 3 <BootstrapperApplication SourceFile="!(bindpath.ba.payloads)\Example.LatestCoreMBA.exe">
4 <!-- <bal:WixDotNetCoreBootstrapperApplicationHost SelfContainedDeployment="yes" /> --> 4 <Payloads Include="!(bindpath.ba.payloads)\**">
5 <PayloadGroupRef Id="publish.Example.LatestCoreMBA.trimmedscd" /> 5 <Exclude Files="!(bindpath.ba.payloads)\Example.LatestCoreMBA.exe" />
6 </Payloads>
6 </BootstrapperApplication> 7 </BootstrapperApplication>
8
7 <Chain> 9 <Chain>
8 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" /> 10 <ExePackage DetectCondition="none" UninstallArguments="-foo" SourceFile="..\.data\notanexe.exe" PerMachine="yes" />
9 </Chain> 11 </Chain>
diff --git a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/ba.xslt b/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/ba.xslt
deleted file mode 100644
index f606296e..00000000
--- a/src/ext/Bal/test/examples/LatestCoreBundleTrimmedSCD/ba.xslt
+++ /dev/null
@@ -1,15 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
4 xmlns:wix="http://wixtoolset.org/schemas/v4/wxs"
5>
6 <xsl:output method="xml" indent="yes"/>
7
8 <xsl:template match="@* | node()">
9 <xsl:copy>
10 <xsl:apply-templates select="@* | node()"/>
11 </xsl:copy>
12 </xsl:template>
13
14 <xsl:template match="wix:Payload[@SourceFile='SourceDir\Example.LatestCoreMBA.exe']" />
15</xsl:stylesheet>
diff --git a/src/ext/Bal/test/examples/examples.proj b/src/ext/Bal/test/examples/examples.proj
index c1544766..e439c288 100644
--- a/src/ext/Bal/test/examples/examples.proj
+++ b/src/ext/Bal/test/examples/examples.proj
@@ -34,16 +34,12 @@
34 Condition="'%(CoreMBAProject.SkipFDD)'==''" /> 34 Condition="'%(CoreMBAProject.SkipFDD)'==''" />
35 <Exec Command='dotnet publish -o "%(CoreMBAProject.PublishPath)\scd" -r win-x64 -c $(Configuration) --self-contained true "%(CoreMBAProject.Identity)"' 35 <Exec Command='dotnet publish -o "%(CoreMBAProject.PublishPath)\scd" -r win-x64 -c $(Configuration) --self-contained true "%(CoreMBAProject.Identity)"'
36 Condition="'%(CoreMBAProject.SkipSCD)'==''" /> 36 Condition="'%(CoreMBAProject.SkipSCD)'==''" />
37 <!--
38 Publishing a library is "undefined" (per https://github.com/dotnet/runtime/issues/91535)
39 and is now a build error. This will go away when BAs go out of proc, so not spending a
40 lot of time to keep building trimmed in VS 17.8.
41 -->
42 <Exec Command='dotnet publish -o "%(CoreMBAProject.PublishPath)\trimmedscd" -r win-x64 -c $(Configuration) --self-contained true -p:PublishTrimmed=false -p:TrimMode=%(CoreMBAProject.TrimMode) "%(CoreMBAProject.Identity)"' 37 <Exec Command='dotnet publish -o "%(CoreMBAProject.PublishPath)\trimmedscd" -r win-x64 -c $(Configuration) --self-contained true -p:PublishTrimmed=false -p:TrimMode=%(CoreMBAProject.TrimMode) "%(CoreMBAProject.Identity)"'
43 Condition="'%(CoreMBAProject.TrimMode)'!=''" /> 38 Condition="'%(CoreMBAProject.TrimMode)'!=''" />
44 </Target> 39 </Target>
45 40
46 <ItemGroup> 41 <ItemGroup>
42 <ProjectReference Include="..\..\wixext\WixToolset.BootstrapperApplications.wixext.csproj" />
47 <ProjectReference Include="**\*.wixproj" /> 43 <ProjectReference Include="**\*.wixproj" />
48 </ItemGroup> 44 </ItemGroup>
49</Project> 45</Project>
diff --git a/src/ext/Bal/wixext/README.md b/src/ext/Bal/wixext/README.md
deleted file mode 100644
index a986cb0e..00000000
--- a/src/ext/Bal/wixext/README.md
+++ /dev/null
@@ -1,7 +0,0 @@
1# WixToolset.BootstrapperApplications
2
3WixToolset.BootstrapperApplications is a WiX extension that provides the WiX bootstrapper applications:
4
5- WixStdBA ([WixStandardBootstrapperApplication](https://wixtoolset.org/docs/schema/bal/wixstandardbootstrapperapplication/)), a bootstrapper application with support for custom themes
6- WixIuiBA ([WixInternalUIBootstrapperApplication](https://wixtoolset.org/docs/schema/bal/wixinternaluibootstrapperapplication/)), a bootstrapper application for showing internal UI of Windows Installer packages
7- WixPreqBA ([WixPrerequisiteBootstrapperApplication](https://wixtoolset.org/docs/schema/bal/wixprerequisitebootstrapperapplication/)), a secondary bootstrapper application for bootstrapping the prerequisites needed for a primary bootstrapper application
diff --git a/src/ext/Bal/wixext/WixToolset.BootstrapperApplications.wixext.csproj b/src/ext/Bal/wixext/WixToolset.BootstrapperApplications.wixext.csproj
index de32ff4d..adc6a86f 100644
--- a/src/ext/Bal/wixext/WixToolset.BootstrapperApplications.wixext.csproj
+++ b/src/ext/Bal/wixext/WixToolset.BootstrapperApplications.wixext.csproj
@@ -18,7 +18,7 @@
18 </ItemGroup> 18 </ItemGroup>
19 19
20 <ItemGroup> 20 <ItemGroup>
21 <None Include="README.md" Pack="true" PackagePath="\" /> 21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup> 22 </ItemGroup>
23 23
24 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
diff --git a/src/ext/Bal/wixstdfn/README.md b/src/ext/Bal/wixstdfn/README.md
index 0977ff42..4aef768e 100644
--- a/src/ext/Bal/wixstdfn/README.md
+++ b/src/ext/Bal/wixstdfn/README.md
@@ -1,11 +1,37 @@
1# WixToolset.WixStandardBootstrapperApplicationFunctionApi 1# WixToolset.WixStandardBootstrapperApplicationFunctionApi - extend WiX Standard Bootstrapper Application
2 2
3WixToolset.WixStandardBootstrapperApplicationFunctionApi contains the SDK for building **BAFunctions** extensions for WixStdBA, the WiX Standard Bootstrapper Application for Burn bootstrapper bundles. 3The `WixToolset.WixStandardBootstrapperApplicationFunctionApi` package contains the SDK for building **BAFunctions** extensions for WixStdBA, the WiX Standard Bootstrapper Application for Burn bootstrapper bundles.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
4 16
5BAFunctions are native-code DLLs (typically written in C++) that let you supplement the behavior of WixStdBA, rather than writing an entirely new BA to tweak existing BA behavior. 17BAFunctions are native-code DLLs (typically written in C++) that let you supplement the behavior of WixStdBA, rather than writing an entirely new BA to tweak existing BA behavior.
6 18
7## Sources 19The best way to learn is via the samples at: https://github.com/wixtoolset/wix/tree/HEAD/src/ext/Bal/Samples/bafunctions
8https://github.com/wixtoolset/wix/tree/HEAD/src/ext/Bal/wixstdfn 20
21
22## Additional resources
23
24* [WiX Website][web]
25* [WiX Documentation][docs]
26* [WiX Issue Tracker][issues]
27* [WiX Discussions][discussions]
28
9 29
10## Samples 30[web]: https://www.firegiant.com/wixtoolset/
11https://github.com/wixtoolset/wix/tree/HEAD/src/ext/Bal/Samples/bafunctions 31[docs]: https://docs.firegiant.com/wixtoolset/
32[issues]: https://github.com/wixtoolset/issues/issues
33[discussions]: https://github.com/orgs/wixtoolset/discussions
34[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
35[osmf]: https://opensourcemaintenancefee.org/
36[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
37[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Bal/wixstdfn/wixstdfn.nuspec b/src/ext/Bal/wixstdfn/wixstdfn.nuspec
index 86860b67..d4b6e104 100644
--- a/src/ext/Bal/wixstdfn/wixstdfn.nuspec
+++ b/src/ext/Bal/wixstdfn/wixstdfn.nuspec
@@ -7,13 +7,13 @@
7 <description>$description$</description> 7 <description>$description$</description>
8 <authors>$authors$</authors> 8 <authors>$authors$</authors>
9 <icon>icon.png</icon> 9 <icon>icon.png</icon>
10 <readme>README.md</readme>
10 <license type="file">OSMFEULA.txt</license> 11 <license type="file">OSMFEULA.txt</license>
11 <requireLicenseAcceptance>true</requireLicenseAcceptance> 12 <requireLicenseAcceptance>true</requireLicenseAcceptance>
12 <tags>$packageTags$</tags> 13 <tags>$packageTags$</tags>
13 <copyright>$copyright$</copyright> 14 <copyright>$copyright$</copyright>
14 <projectUrl>$projectUrl$</projectUrl> 15 <projectUrl>$projectUrl$</projectUrl>
15 <repository type="$repositorytype$" url="$repositoryurl$" commit="$repositorycommit$" /> 16 <repository type="$repositorytype$" url="$repositoryurl$" commit="$repositorycommit$" />
16 <readme>README.md</readme>
17 <dependencies> 17 <dependencies>
18 <group targetFramework="Native"> 18 <group targetFramework="Native">
19 <dependency id="WixToolset.BootstrapperApplicationApi" version="[$version$,$nextmajorversion$)" /> 19 <dependency id="WixToolset.BootstrapperApplicationApi" version="[$version$,$nextmajorversion$)" />
diff --git a/src/ext/ComPlus/README.md b/src/ext/ComPlus/README.md
index 8604c104..01f60df4 100644
--- a/src/ext/ComPlus/README.md
+++ b/src/ext/ComPlus/README.md
@@ -1,2 +1,52 @@
1# ComPlus.wixext 1# WixToolset.ComPlus.wixext - COM+ WiX Toolset Extension
2WixToolset.ComPlus.wixext - COM+ WiX Toolset Extension 2
3This WiX Extension provides support for configuring COM+.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.ComPlus.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:complus="http://wixtoolset.org/schemas/v4/wxs/complus">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/ComPlus/complus_t.proj b/src/ext/ComPlus/complus_t.proj
index 8f187744..56f0cc99 100644
--- a/src/ext/ComPlus/complus_t.proj
+++ b/src/ext/ComPlus/complus_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.ComPlus\WixToolsetTest.ComPlus.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.ComPlus\WixToolsetTest.ComPlus.csproj" />
7 <ProjectReference Include="wixext\WixToolset.ComPlus.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.ComPlus.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.ComPlus.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.ComPlus.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.ComPlus\WixToolsetTest.ComPlus.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/ComPlus/wixext/WixToolset.ComPlus.wixext.csproj b/src/ext/ComPlus/wixext/WixToolset.ComPlus.wixext.csproj
index 1975d7d4..11911b35 100644
--- a/src/ext/ComPlus/wixext/WixToolset.ComPlus.wixext.csproj
+++ b/src/ext/ComPlus/wixext/WixToolset.ComPlus.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.ComPlus</RootNamespace> 7 <RootNamespace>WixToolset.ComPlus</RootNamespace>
8 <Description>WiX Toolset ComPlus Extension</Description> 8 <Description>WiX Toolset ComPlus Extension</Description>
9 <Title>WiX Toolset ComPlus Extension</Title> 9 <Title>WiX Toolset ComPlus Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\complus.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\complus.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Dependency/README.md b/src/ext/Dependency/README.md
index 09feba68..2ed031f2 100644
--- a/src/ext/Dependency/README.md
+++ b/src/ext/Dependency/README.md
@@ -1,2 +1,52 @@
1# Dependency.wixext 1# WixToolset.Dependency.wixext - Dependency WiX Toolset Extension
2WixToolset.Dependency.wixext - Dependency WiX Toolset Extension 2
3This WiX Extension provides support for configuring package dependencies.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Dependency.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:dep="http://wixtoolset.org/schemas/v4/wxs/dependency">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Dependency/dependency_t.proj b/src/ext/Dependency/dependency_t.proj
index 569ddd17..c4293806 100644
--- a/src/ext/Dependency/dependency_t.proj
+++ b/src/ext/Dependency/dependency_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Dependency\WixToolsetTest.Dependency.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Dependency\WixToolsetTest.Dependency.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Dependency.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Dependency.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Dependency.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Dependency.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Dependency\WixToolsetTest.Dependency.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Dependency/wixext/WixToolset.Dependency.wixext.csproj b/src/ext/Dependency/wixext/WixToolset.Dependency.wixext.csproj
index b61c6665..51010891 100644
--- a/src/ext/Dependency/wixext/WixToolset.Dependency.wixext.csproj
+++ b/src/ext/Dependency/wixext/WixToolset.Dependency.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Dependency</RootNamespace> 7 <RootNamespace>WixToolset.Dependency</RootNamespace>
8 <Description>WiX Toolset Dependency Extension</Description> 8 <Description>WiX Toolset Dependency Extension</Description>
9 <Title>WiX Toolset Dependency Extension</Title> 9 <Title>WiX Toolset Dependency Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\dependency.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\dependency.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\dependency.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\dependency.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/DirectX/README.md b/src/ext/DirectX/README.md
index 6131cf35..cceaa105 100644
--- a/src/ext/DirectX/README.md
+++ b/src/ext/DirectX/README.md
@@ -1,2 +1,52 @@
1# DirectX.wixext 1# WixToolset.DirectX.wixext - DirectX WiX Toolset Extension
2WixToolset.DirectX.wixext - DirectX WiX Toolset Extension 2
3This WiX Extension provides support for configuring DirectX.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.DirectX.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:dx="http://wixtoolset.org/schemas/v4/wxs/directx">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/DirectX/directx_t.proj b/src/ext/DirectX/directx_t.proj
index f014465b..ff28ccb7 100644
--- a/src/ext/DirectX/directx_t.proj
+++ b/src/ext/DirectX/directx_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.DirectX\WixToolsetTest.DirectX.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.DirectX\WixToolsetTest.DirectX.csproj" />
7 <ProjectReference Include="wixext\WixToolset.DirectX.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.DirectX.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.DirectX.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.DirectX.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.DirectX\WixToolsetTest.DirectX.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/DirectX/wixext/WixToolset.DirectX.wixext.csproj b/src/ext/DirectX/wixext/WixToolset.DirectX.wixext.csproj
index 80263e9a..eadbc193 100644
--- a/src/ext/DirectX/wixext/WixToolset.DirectX.wixext.csproj
+++ b/src/ext/DirectX/wixext/WixToolset.DirectX.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.DirectX</RootNamespace> 7 <RootNamespace>WixToolset.DirectX</RootNamespace>
8 <Description>WiX Toolset DirectX Extension</Description> 8 <Description>WiX Toolset DirectX Extension</Description>
9 <Title>WiX Toolset DirectX Extension</Title> 9 <Title>WiX Toolset DirectX Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\directx.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\directx.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\directx.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\directx.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Firewall/README.md b/src/ext/Firewall/README.md
index be5801da..eac3acf9 100644
--- a/src/ext/Firewall/README.md
+++ b/src/ext/Firewall/README.md
@@ -1,2 +1,52 @@
1# Firewall.wixext 1# WixToolset.Firewall.wixext - Firewall WiX Toolset Extension
2WixToolset.Firewall.wixext - Firewall WiX Toolset Extension 2
3This WiX Extension provides support for configuring Windows Firewall.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Firewall.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:fw="http://wixtoolset.org/schemas/v4/wxs/firewall">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Firewall/firewall_t.proj b/src/ext/Firewall/firewall_t.proj
index 72128805..f2cee0a0 100644
--- a/src/ext/Firewall/firewall_t.proj
+++ b/src/ext/Firewall/firewall_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Firewall\WixToolsetTest.Firewall.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Firewall\WixToolsetTest.Firewall.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Firewall.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Firewall.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Firewall.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Firewall.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Firewall\WixToolsetTest.Firewall.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Firewall/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs b/src/ext/Firewall/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs
index 4b9aecd7..3be8af0e 100644
--- a/src/ext/Firewall/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs
+++ b/src/ext/Firewall/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs
@@ -1,7 +1,12 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.Firewall 7namespace WixToolsetTest.Firewall
4{ 8{
9 using System;
5 using System.Data; 10 using System.Data;
6 using System.IO; 11 using System.IO;
7 using System.Linq; 12 using System.Linq;
@@ -621,6 +626,39 @@ namespace WixToolsetTest.Firewall
621 }, locals.ToArray()); 626 }, locals.ToArray());
622 } 627 }
623 628
629 [TestMethod]
630 public void CanDecompileWix4FirewallPackage()
631 {
632 var folder = TestData.Get(@"TestData\DecompileWix4Firewall");
633 var output = Path.Combine(folder, "DecompiledWix4Firewall.xml");
634
635 var result = WixRunner.Execute(
636 "msi",
637 "decompile",
638 "-ext", Path.GetFullPath(typeof(FirewallExtensionFactory).Assembly.Location),
639 Path.Combine(folder, "Firewall4.msi"),
640 "-o", output
641 );
642 result.AssertSuccess();
643
644 var doc = XDocument.Load(output);
645 var actual = doc.Descendants()
646 .Where(e => e.Name.Namespace == "http://wixtoolset.org/schemas/v4/wxs/firewall")
647 .Select(fe => new { Name = fe.Name.LocalName, Attributes = fe.Attributes().Select(a => $"{a.Name.LocalName}={a.Value}").ToArray() })
648 .ToArray();
649
650 WixAssert.CompareLineByLine(new[]
651 {
652 "FirewallException",
653 "RemoteAddress",
654 "RemoteAddress",
655 "RemoteAddress",
656 "RemoteAddress",
657 "RemoteAddress",
658 "FirewallException",
659 }, actual.Select(a => a.Name).ToArray());
660 }
661
624 private static void Build(string[] args) 662 private static void Build(string[] args)
625 { 663 {
626 var result = WixRunner.Execute(args); 664 var result = WixRunner.Execute(args);
@@ -654,8 +692,9 @@ namespace WixToolsetTest.Firewall
654 var folder = TestData.Get(@"TestData", path); 692 var folder = TestData.Get(@"TestData", path);
655 var build = new Builder(folder, typeof(FirewallExtensionFactory), new[] { folder }); 693 var build = new Builder(folder, typeof(FirewallExtensionFactory), new[] { folder });
656 var output = Path.Combine(folder, $"Firewall{ruleName}.xml"); 694 var output = Path.Combine(folder, $"Firewall{ruleName}.xml");
695 var isOfficialBuild = !String.IsNullOrEmpty(Environment.GetEnvironmentVariable("WixOfficialBuild"));
657 696
658 build.BuildAndDecompileAndBuild(Build, Decompile, output, validate: true); 697 build.BuildAndDecompileAndBuild(Build, Decompile, output, validate: isOfficialBuild);
659 698
660 var doc = XDocument.Load(output); 699 var doc = XDocument.Load(output);
661 var actual = doc.Descendants() 700 var actual = doc.Descendants()
diff --git a/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/Firewall4.msi b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/Firewall4.msi
new file mode 100644
index 00000000..1dde5df4
--- /dev/null
+++ b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/Firewall4.msi
Binary files differ
diff --git a/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wixproj b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wixproj
new file mode 100644
index 00000000..0098d7ac
--- /dev/null
+++ b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wixproj
@@ -0,0 +1,6 @@
1<Project Sdk="WixToolset.Sdk/4.0.6">
2 <ItemGroup>
3 <PackageVersion Update="WixToolset.Firewall.wixext" Version="4.0.6" />
4 <PackageReference Include="WixToolset.Firewall.wixext" />
5 </ItemGroup>
6</Project> \ No newline at end of file
diff --git a/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wxs b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wxs
new file mode 100644
index 00000000..8a89ad6c
--- /dev/null
+++ b/src/ext/Firewall/test/WixToolsetTest.Firewall/TestData/DecompileWix4Firewall/ReferenceSource/Firewall4.wxs
@@ -0,0 +1,36 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
2 xmlns:fw="http://wixtoolset.org/schemas/v4/wxs/firewall">
3 <Package Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a">
4 <MajorUpgrade DowngradeErrorMessage="(DowngradeError)" />
5 <MediaTemplate EmbedCab="yes" />
6
7 <Feature Id="FAll">
8 <ComponentGroupRef Id="ProductComponents" />
9 </Feature>
10 </Package>
11
12 <Fragment>
13 <StandardDirectory Id="ProgramFilesFolder">
14 <Directory Id="INSTALLFOLDER" Name="MsiPackage" />
15 </StandardDirectory>
16 </Fragment>
17
18 <Fragment>
19 <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
20 <Component>
21 <File Name="fw.exe" Source="$(sys.SOURCEFILEPATH)">
22 <Shortcut Id="FwShortcut" Directory="INSTALLFOLDER" Name="Firewall" />
23 <fw:FirewallException Id="ExampleFirewall" Description="An app-based firewall exception" Name="ExampleApp" Port="42">
24 <fw:RemoteAddress Value="Defaultgateway" />
25 <fw:RemoteAddress Value="DHCP" />
26 <fw:RemoteAddress Value="DNS" />
27 <fw:RemoteAddress Value="255.255.255.0" />
28 <fw:RemoteAddress Value="1.1.1.1-2.2.2.2" />
29 </fw:FirewallException>
30 </File>
31
32 <fw:FirewallException Description="A port-based firewall exception" Name="ExamplePort" Port="42" Outbound="yes" Scope="localSubnet" />
33 </Component>
34 </ComponentGroup>
35 </Fragment>
36</Wix>
diff --git a/src/ext/Firewall/wixext/FirewallDecompiler.cs b/src/ext/Firewall/wixext/FirewallDecompiler.cs
index 4fafc0a0..dbfc882e 100644
--- a/src/ext/Firewall/wixext/FirewallDecompiler.cs
+++ b/src/ext/Firewall/wixext/FirewallDecompiler.cs
@@ -4,8 +4,6 @@ namespace WixToolset.Firewall
4{ 4{
5 using System; 5 using System;
6 using System.Collections.Generic; 6 using System.Collections.Generic;
7 using System.Reflection;
8 using System.Security;
9 using System.Xml.Linq; 7 using System.Xml.Linq;
10 using WixToolset.Data; 8 using WixToolset.Data;
11 using WixToolset.Data.WindowsInstaller; 9 using WixToolset.Data.WindowsInstaller;
@@ -83,7 +81,7 @@ namespace WixToolset.Firewall
83 string[] addresses = ((string)row[2]).Split(','); 81 string[] addresses = ((string)row[2]).Split(',');
84 if (addresses.Length == 1) 82 if (addresses.Length == 1)
85 { 83 {
86 switch(addresses[0]) 84 switch (addresses[0])
87 { 85 {
88 case "*": 86 case "*":
89 firewallException.Add(new XAttribute("Scope", "any")); 87 firewallException.Add(new XAttribute("Scope", "any"));
@@ -482,20 +480,25 @@ namespace WixToolset.Firewall
482 /// <param name="tables">Collection of all tables.</param> 480 /// <param name="tables">Collection of all tables.</param>
483 private void FinalizeFirewallExceptionTable(TableIndexedCollection tables) 481 private void FinalizeFirewallExceptionTable(TableIndexedCollection tables)
484 { 482 {
485 if (tables.TryGetTable("Wix5FirewallException", out var firewallExceptionTable)) 483 var possibleTableNames = new List<string>() { "WixFirewallException", "Wix4FirewallException", "Wix5FirewallException", };
484
485 foreach (var tableName in possibleTableNames)
486 { 486 {
487 foreach (var row in firewallExceptionTable.Rows) 487 if (tables.TryGetTable(tableName, out var firewallExceptionTable))
488 { 488 {
489 var xmlConfig = this.DecompilerHelper.GetIndexedElement(row); 489 foreach (var row in firewallExceptionTable.Rows)
490
491 var componentId = row.FieldAsString(8);
492 if (this.DecompilerHelper.TryGetIndexedElement("Component", componentId, out var component))
493 {
494 component.Add(xmlConfig);
495 }
496 else
497 { 490 {
498 this.Messaging.Write(WarningMessages.ExpectedForeignRow(row.SourceLineNumbers, firewallExceptionTable.Name, row.GetPrimaryKey(), "Component_", componentId, "Component")); 491 var xmlConfig = this.DecompilerHelper.GetIndexedElement(row);
492
493 var componentId = row.FieldAsString(8);
494 if (this.DecompilerHelper.TryGetIndexedElement("Component", componentId, out var component))
495 {
496 component.Add(xmlConfig);
497 }
498 else
499 {
500 this.Messaging.Write(WarningMessages.ExpectedForeignRow(row.SourceLineNumbers, firewallExceptionTable.Name, row.GetPrimaryKey(), "Component_", componentId, "Component"));
501 }
499 } 502 }
500 } 503 }
501 } 504 }
diff --git a/src/ext/Firewall/wixext/WixToolset.Firewall.wixext.csproj b/src/ext/Firewall/wixext/WixToolset.Firewall.wixext.csproj
index 25322dc4..f9032032 100644
--- a/src/ext/Firewall/wixext/WixToolset.Firewall.wixext.csproj
+++ b/src/ext/Firewall/wixext/WixToolset.Firewall.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Firewall</RootNamespace> 7 <RootNamespace>WixToolset.Firewall</RootNamespace>
8 <Description>WiX Toolset Firewall Extension</Description> 8 <Description>WiX Toolset Firewall Extension</Description>
9 <Title>WiX Toolset Firewall Extension</Title> 9 <Title>WiX Toolset Firewall Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\firewall.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\firewall.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\firewall.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\firewall.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Http/README.md b/src/ext/Http/README.md
index 2d9f1895..35c80c68 100644
--- a/src/ext/Http/README.md
+++ b/src/ext/Http/README.md
@@ -1,2 +1,52 @@
1# Http.wixext 1# WixToolset.Http.wixext - Http WiX Toolset Extension
2WixToolset.Http.wixext - Http WiX Toolset Extension 2
3This WiX Extension provides support for configuring HTTP.SYS.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Http.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:http="http://wixtoolset.org/schemas/v4/wxs/http">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Http/http_t.proj b/src/ext/Http/http_t.proj
index ddcb64b4..b3de433f 100644
--- a/src/ext/Http/http_t.proj
+++ b/src/ext/Http/http_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Http\WixToolsetTest.Http.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Http\WixToolsetTest.Http.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Http.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Http.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Http.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Http.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Http\WixToolsetTest.Http.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Http/test/WixToolsetTest.Http/HttpExtensionFixture.cs b/src/ext/Http/test/WixToolsetTest.Http/HttpExtensionFixture.cs
index c91ce937..7dcb9086 100644
--- a/src/ext/Http/test/WixToolsetTest.Http/HttpExtensionFixture.cs
+++ b/src/ext/Http/test/WixToolsetTest.Http/HttpExtensionFixture.cs
@@ -1,5 +1,9 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.Http 7namespace WixToolsetTest.Http
4{ 8{
5 using Microsoft.VisualStudio.TestTools.UnitTesting; 9 using Microsoft.VisualStudio.TestTools.UnitTesting;
diff --git a/src/ext/Http/wixext/WixToolset.Http.wixext.csproj b/src/ext/Http/wixext/WixToolset.Http.wixext.csproj
index cee26f86..64c0785c 100644
--- a/src/ext/Http/wixext/WixToolset.Http.wixext.csproj
+++ b/src/ext/Http/wixext/WixToolset.Http.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Http</RootNamespace> 7 <RootNamespace>WixToolset.Http</RootNamespace>
8 <Description>WiX Toolset Http Extension</Description> 8 <Description>WiX Toolset Http Extension</Description>
9 <Title>WiX Toolset Http Extension</Title> 9 <Title>WiX Toolset Http Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\http.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\http.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\http.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\http.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Iis/README.md b/src/ext/Iis/README.md
index ddb21a82..f9fb96c3 100644
--- a/src/ext/Iis/README.md
+++ b/src/ext/Iis/README.md
@@ -1,2 +1,52 @@
1# Iis.wixext 1# WixToolset.Iis.wixext - IIS WiX Toolset Extension
2WixToolset.Iis.wixext - Iis WiX Toolset Extension 2
3This WiX Extension provides support for configuring IIS.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Iis.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:iis="http://wixtoolset.org/schemas/v4/wxs/iis">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Iis/iis_t.proj b/src/ext/Iis/iis_t.proj
index 2238d785..2e05f3f1 100644
--- a/src/ext/Iis/iis_t.proj
+++ b/src/ext/Iis/iis_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Iis\WixToolsetTest.Iis.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Iis\WixToolsetTest.Iis.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Iis.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Iis.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Iis.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Iis.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Iis\WixToolsetTest.Iis.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Iis/wixext/IIsCompiler.cs b/src/ext/Iis/wixext/IIsCompiler.cs
index 5e3c0a95..53160dcd 100644
--- a/src/ext/Iis/wixext/IIsCompiler.cs
+++ b/src/ext/Iis/wixext/IIsCompiler.cs
@@ -219,7 +219,7 @@ namespace WixToolset.Iis
219 break; 219 break;
220 default: 220 default:
221 storeLocation = -1; 221 storeLocation = -1;
222 this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "StoreLocation", storeLocationValue, "currentUser", "localMachine")); 222 this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "StoreLocation", storeLocationValue, "currentUser", "localMachine", "services", "users", "userPolicy", "localMachinePolicy", "localMachineEnterprise"));
223 break; 223 break;
224 } 224 }
225 } 225 }
diff --git a/src/ext/Iis/wixext/WixToolset.Iis.wixext.csproj b/src/ext/Iis/wixext/WixToolset.Iis.wixext.csproj
index 79c8dae7..72d32cfa 100644
--- a/src/ext/Iis/wixext/WixToolset.Iis.wixext.csproj
+++ b/src/ext/Iis/wixext/WixToolset.Iis.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Iis</RootNamespace> 7 <RootNamespace>WixToolset.Iis</RootNamespace>
8 <Description>WiX Toolset Iis Extension</Description> 8 <Description>WiX Toolset Iis Extension</Description>
9 <Title>WiX Toolset Iis Extension</Title> 9 <Title>WiX Toolset Iis Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\iis.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\iis.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\iis.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\iis.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Msmq/README.md b/src/ext/Msmq/README.md
index fa3c277f..46491349 100644
--- a/src/ext/Msmq/README.md
+++ b/src/ext/Msmq/README.md
@@ -1,2 +1,52 @@
1# Msmq.wixext 1# WixToolset.Msmq.wixext - MSMQ WiX Toolset Extension
2WixToolset.Msmq.wixext - MSMQ WiX Toolset Extension 2
3This WiX Extension provides support for configuring MSMQ.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Msmq.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:msmq="http://wixtoolset.org/schemas/v4/wxs/msmq">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Msmq/msmq_t.proj b/src/ext/Msmq/msmq_t.proj
index 9eaab92f..639f7f77 100644
--- a/src/ext/Msmq/msmq_t.proj
+++ b/src/ext/Msmq/msmq_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Msmq\WixToolsetTest.Msmq.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Msmq\WixToolsetTest.Msmq.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Msmq.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Msmq.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Msmq.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Msmq.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Msmq\WixToolsetTest.Msmq.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Msmq/wixext/WixToolset.Msmq.wixext.csproj b/src/ext/Msmq/wixext/WixToolset.Msmq.wixext.csproj
index ef369c2c..5aa81b74 100644
--- a/src/ext/Msmq/wixext/WixToolset.Msmq.wixext.csproj
+++ b/src/ext/Msmq/wixext/WixToolset.Msmq.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Msmq</RootNamespace> 7 <RootNamespace>WixToolset.Msmq</RootNamespace>
8 <Description>WiX Toolset MSMQ Extension</Description> 8 <Description>WiX Toolset MSMQ Extension</Description>
9 <Title>WiX Toolset MSMQ Extension</Title> 9 <Title>WiX Toolset MSMQ Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\msmq.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\msmq.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\msmq.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\msmq.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/NetFx/README.md b/src/ext/NetFx/README.md
index a31cfd1d..dcc79786 100644
--- a/src/ext/NetFx/README.md
+++ b/src/ext/NetFx/README.md
@@ -1,2 +1,52 @@
1# NetFx.wixext 1# WixToolset.NetFx.wixext - .NET Framework WiX Toolset Extension
2WixToolset.NetFx.wixext - .NET Framework WiX Toolset Extension 2
3This WiX Extension provides support for configuring .NET Framework.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.NetFx.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:netfx="http://wixtoolset.org/schemas/v4/wxs/netfx">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/NetFx/netfx_t.proj b/src/ext/NetFx/netfx_t.proj
index 1c1b8a61..86996e42 100644
--- a/src/ext/NetFx/netfx_t.proj
+++ b/src/ext/NetFx/netfx_t.proj
@@ -4,7 +4,7 @@
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="wixlib\netfx.wixproj" /> 6 <ProjectReference Include="wixlib\netfx.wixproj" />
7 <ProjectReference Include="test\WixToolsetTest.Netfx\WixToolsetTest.Netfx.csproj" Targets="Test" /> 7 <ProjectReference Include="test\WixToolsetTest.Netfx\WixToolsetTest.Netfx.csproj" />
8 <ProjectReference Include="wixext\WixToolset.Netfx.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 8 <ProjectReference Include="wixext\WixToolset.Netfx.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
9 </ItemGroup> 9 </ItemGroup>
10 10
@@ -23,4 +23,8 @@
23 23
24 <Delete Files="$(ArtifactsFolder)WixToolset.NetFx.wixext.*.nupkg" /> 24 <Delete Files="$(ArtifactsFolder)WixToolset.NetFx.wixext.*.nupkg" />
25 </Target> 25 </Target>
26
27 <Target Name="WixTest">
28 <MSBuild Projects="test\WixToolsetTest.Netfx\WixToolsetTest.Netfx.csproj" Targets="Test" />
29 </Target>
26</Project> 30</Project>
diff --git a/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
index 37f715bf..381270d4 100644
--- a/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
+++ b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
@@ -1,5 +1,9 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.Netfx 7namespace WixToolsetTest.Netfx
4{ 8{
5 using System.IO; 9 using System.IO;
diff --git a/src/ext/NetFx/wixext/WixToolset.Netfx.wixext.csproj b/src/ext/NetFx/wixext/WixToolset.Netfx.wixext.csproj
index 67759ab3..2c63a42d 100644
--- a/src/ext/NetFx/wixext/WixToolset.Netfx.wixext.csproj
+++ b/src/ext/NetFx/wixext/WixToolset.Netfx.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Netfx</RootNamespace> 7 <RootNamespace>WixToolset.Netfx</RootNamespace>
8 <Description>WiX Toolset .NET extension</Description> 8 <Description>WiX Toolset .NET extension</Description>
9 <Title>WiX Toolset .NET extension</Title> 9 <Title>WiX Toolset .NET extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\netfx.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\netfx.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\netfx.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\netfx.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/NetFx/wixlib/NetFx48.wxs b/src/ext/NetFx/wixlib/NetFx48.wxs
index a2aaf70f..14689829 100644
--- a/src/ext/NetFx/wixlib/NetFx48.wxs
+++ b/src/ext/NetFx/wixlib/NetFx48.wxs
@@ -52,7 +52,7 @@
52 52
53 <PackageGroup Id="$(var.NetFx48RedistId)"> 53 <PackageGroup Id="$(var.NetFx48RedistId)">
54 <ExePackage CacheId="$(var.NetFx48RedistId)_ABDCA79AF9DD48A0EA702AD45260B3C03093FB4B" InstallArguments="/q /norestart /log &quot;[NetFx48RedistLog].html&quot;" PerMachine="yes" DetectCondition="!(wix.NetFx48RedistDetectCondition)" InstallCondition="!(wix.NetFx48RedistInstallCondition)" Id="$(var.NetFx48RedistId)" Vital="yes" Permanent="yes" Protocol="netfx4" LogPathVariable="NetFx48RedistLog" Cache="remove"> 54 <ExePackage CacheId="$(var.NetFx48RedistId)_ABDCA79AF9DD48A0EA702AD45260B3C03093FB4B" InstallArguments="/q /norestart /log &quot;[NetFx48RedistLog].html&quot;" PerMachine="yes" DetectCondition="!(wix.NetFx48RedistDetectCondition)" InstallCondition="!(wix.NetFx48RedistInstallCondition)" Id="$(var.NetFx48RedistId)" Vital="yes" Permanent="yes" Protocol="netfx4" LogPathVariable="NetFx48RedistLog" Cache="remove">
55 <ExePackagePayload Name="!(wix.NetFx48RedistPackageDirectory)ndp48-x86-x64-allos-enu.exe" DownloadUrl="$(var.NetFx48RedistLink)" ProductName="Microsoft .NET Framework 4.8" Description="Microsoft .NET Framework 4.8 Setup" CertificatePublicKey="F49F9B33E25E33CCA0BFB15A62B7C29FFAB3880B" CertificateThumbprint="C2048FB509F1C37A8C3E9EC6648118458AA01780" Size="121346568" Version="4.8.4115.0" /> 55 <ExePackagePayload Name="!(wix.NetFx48RedistPackageDirectory)ndp48-x86-x64-allos-enu.exe" DownloadUrl="$(var.NetFx48RedistLink)" ProductName="Microsoft .NET Framework 4.8" Description="Microsoft .NET Framework 4.8 Setup" CertificatePublicKey="597A58F3E398F113D0B4305649AEB6DCAD457361" CertificateThumbprint="C2048FB509F1C37A8C3E9EC6648118458AA01780" Size="121346568" Version="4.8.4115.0" />
56 </ExePackage> 56 </ExePackage>
57 </PackageGroup> 57 </PackageGroup>
58 </Fragment> 58 </Fragment>
diff --git a/src/ext/PowerShell/README.md b/src/ext/PowerShell/README.md
index 6de236f7..9cea557f 100644
--- a/src/ext/PowerShell/README.md
+++ b/src/ext/PowerShell/README.md
@@ -1,2 +1,52 @@
1# PowerShell.wixext 1# WixToolset.PowerShell.wixext - PowerShell WiX Toolset Extension
2WixToolset.PowerShell.wixext - PowerShell WiX Toolset Extension 2
3This WiX Extension provides support for configuring PowerShell.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.PowerShell.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:ps="http://wixtoolset.org/schemas/v4/wxs/powershell">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/PowerShell/powershell_t.proj b/src/ext/PowerShell/powershell_t.proj
index a1d88013..8c12bdef 100644
--- a/src/ext/PowerShell/powershell_t.proj
+++ b/src/ext/PowerShell/powershell_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.PowerShell\WixToolsetTest.Powershell.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.PowerShell\WixToolsetTest.Powershell.csproj" />
7 <ProjectReference Include="wixext\WixToolset.PowerShell.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.PowerShell.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.PowerShell.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.PowerShell.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.PowerShell\WixToolsetTest.Powershell.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/PowerShell/wixext/WixToolset.PowerShell.wixext.csproj b/src/ext/PowerShell/wixext/WixToolset.PowerShell.wixext.csproj
index 812915a8..93ac837c 100644
--- a/src/ext/PowerShell/wixext/WixToolset.PowerShell.wixext.csproj
+++ b/src/ext/PowerShell/wixext/WixToolset.PowerShell.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.PowerShell</RootNamespace> 7 <RootNamespace>WixToolset.PowerShell</RootNamespace>
8 <Description>WiX Toolset PowerShell Extension</Description> 8 <Description>WiX Toolset PowerShell Extension</Description>
9 <Title>WiX Toolset PowerShell Extension</Title> 9 <Title>WiX Toolset PowerShell Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\powershell.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\powershell.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\powershell.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\powershell.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/Sql/README.md b/src/ext/Sql/README.md
index 377c9032..156c7761 100644
--- a/src/ext/Sql/README.md
+++ b/src/ext/Sql/README.md
@@ -1,2 +1,52 @@
1# Sql.wixext 1# WixToolset.Sql.wixext - Sql WiX Toolset Extension
2WixToolset.Sql.wixext - Sql WiX Toolset Extension 2
3This WiX Extension provides support for configuring SQL Server.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Sql.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:sql="http://wixtoolset.org/schemas/v4/wxs/sql">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Sql/sql_t.proj b/src/ext/Sql/sql_t.proj
index 92c908d2..42450510 100644
--- a/src/ext/Sql/sql_t.proj
+++ b/src/ext/Sql/sql_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Sql\WixToolsetTest.Sql.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Sql\WixToolsetTest.Sql.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Sql.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Sql.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Sql.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Sql.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Sql\WixToolsetTest.Sql.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Sql/wixext/WixToolset.Sql.wixext.csproj b/src/ext/Sql/wixext/WixToolset.Sql.wixext.csproj
index 28a66297..32386b79 100644
--- a/src/ext/Sql/wixext/WixToolset.Sql.wixext.csproj
+++ b/src/ext/Sql/wixext/WixToolset.Sql.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Sql</RootNamespace> 7 <RootNamespace>WixToolset.Sql</RootNamespace>
8 <Description>WiX Toolset Sql Extension</Description> 8 <Description>WiX Toolset Sql Extension</Description>
9 <Title>WiX Toolset Sql Extension</Title> 9 <Title>WiX Toolset Sql Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\sql.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\sql.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\sql.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\sql.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/UI/README.md b/src/ext/UI/README.md
index ebfefedd..5b040f13 100644
--- a/src/ext/UI/README.md
+++ b/src/ext/UI/README.md
@@ -1,2 +1,52 @@
1# UI.wixext 1# WixToolset.UI.wixext - UI WiX Toolset Extension
2WixToolset.UI.wixext - UI WiX Toolset Extension 2
3This WiX Extension provides support for standard internal MSI UI.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.UI.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:ui="http://wixtoolset.org/schemas/v4/wxs/ui">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs b/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs
index e06feac7..9bc82fcf 100644
--- a/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs
+++ b/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs
@@ -1,5 +1,9 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.UI 7namespace WixToolsetTest.UI
4{ 8{
5 using System.IO; 9 using System.IO;
@@ -109,7 +113,7 @@ namespace WixToolsetTest.UI
109 var bindFolder = TestData.Get(@"TestData", "data"); 113 var bindFolder = TestData.Get(@"TestData", "data");
110 var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); 114 var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder });
111 115
112 var results = build.BuildAndQuery(BuildX64, "Binary", "Dialog", "CustomAction", "ControlEvent", "InstallUISequence"); 116 var results = build.BuildAndQuery(Build, validate: true, "Binary", "Dialog", "CustomAction", "ControlEvent", "InstallUISequence");
113 WixAssert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t")); 117 WixAssert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t"));
114 WixAssert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t")); 118 WixAssert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t"));
115 WixAssert.Empty(results.Where(result => result.StartsWith("Dialog:SetupTypeDlg\t"))); 119 WixAssert.Empty(results.Where(result => result.StartsWith("Dialog:SetupTypeDlg\t")));
diff --git a/src/ext/UI/ui_t.proj b/src/ext/UI/ui_t.proj
index 6ac63cfe..895c0323 100644
--- a/src/ext/UI/ui_t.proj
+++ b/src/ext/UI/ui_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.UI\WixToolsetTest.UI.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.UI\WixToolsetTest.UI.csproj" />
7 <ProjectReference Include="wixext\WixToolset.UI.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.UI.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.UI.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.UI.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.UI\WixToolsetTest.UI.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/UI/wixext/WixToolset.UI.wixext.csproj b/src/ext/UI/wixext/WixToolset.UI.wixext.csproj
index 288b4a85..1ba64a5a 100644
--- a/src/ext/UI/wixext/WixToolset.UI.wixext.csproj
+++ b/src/ext/UI/wixext/WixToolset.UI.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.UI</RootNamespace> 7 <RootNamespace>WixToolset.UI</RootNamespace>
8 <Description>WiX Toolset UI Extension</Description> 8 <Description>WiX Toolset UI Extension</Description>
9 <Title>WiX Toolset UI Extension</Title> 9 <Title>WiX Toolset UI Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\ui.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\ui.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\ui.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\ui.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/UI/wixlib/WixUI_FeatureTree.wxs b/src/ext/UI/wixlib/WixUI_FeatureTree.wxs
index 5ec27445..a02ad28b 100644
--- a/src/ext/UI/wixlib/WixUI_FeatureTree.wxs
+++ b/src/ext/UI/wixlib/WixUI_FeatureTree.wxs
@@ -35,6 +35,8 @@ Patch dialog sequence:
35 35
36 <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" /> 36 <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
37 37
38 <DialogRef Id="BrowseDlg" />
39 <DialogRef Id="DiskCostDlg" />
38 <DialogRef Id="ErrorDlg" /> 40 <DialogRef Id="ErrorDlg" />
39 <DialogRef Id="FatalError" /> 41 <DialogRef Id="FatalError" />
40 <DialogRef Id="FilesInUse" /> 42 <DialogRef Id="FilesInUse" />
@@ -56,6 +58,9 @@ Patch dialog sequence:
56 <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" Order="2" Condition="NOT Installed" /> 58 <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" Order="2" Condition="NOT Installed" />
57 <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" /> 59 <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" />
58 60
61 <Publish Dialog="BrowseDlg" Control="OK" Event="SetTargetPath" Value="[_BrowseProperty]" Order="3" />
62 <Publish Dialog="BrowseDlg" Control="OK" Event="EndDialog" Value="Return" Order="4" />
63
59 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1" Condition="NOT Installed OR WixUI_InstallMode = &quot;Change&quot;" /> 64 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1" Condition="NOT Installed OR WixUI_InstallMode = &quot;Change&quot;" />
60 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2" Condition="Installed AND NOT PATCH" /> 65 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2" Condition="Installed AND NOT PATCH" />
61 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="3" Condition="Installed AND PATCH" /> 66 <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="3" Condition="Installed AND PATCH" />
diff --git a/src/ext/Util/README.md b/src/ext/Util/README.md
index 540c539c..2bbf17ce 100644
--- a/src/ext/Util/README.md
+++ b/src/ext/Util/README.md
@@ -1,3 +1,52 @@
1# Util.wixext 1# WixToolset.Util.wixext - Utility WiX Toolset Extension
2WixToolset.Util.wixext - Utility WiX Toolset Extension
3 2
3This WiX Extension provides support for configuring various parts of Windows.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.Util.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
index 03d87e4e..bb00717f 100644
--- a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
+++ b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
@@ -1,15 +1,18 @@
1// 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. 1// 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.
2 2
3using Microsoft.VisualStudio.TestTools.UnitTesting;
4
5[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]
6
3namespace WixToolsetTest.Util 7namespace WixToolsetTest.Util
4{ 8{
5 using System;
6 using System.IO; 9 using System.IO;
7 using System.Linq; 10 using System.Linq;
8 using System.Xml; 11 using System.Xml;
9 using System.Xml.Linq; 12 using System.Xml.Linq;
10 using Microsoft.VisualStudio.TestTools.UnitTesting; 13 using Microsoft.VisualStudio.TestTools.UnitTesting;
11 using WixInternal.MSTestSupport;
12 using WixInternal.Core.MSTestPackage; 14 using WixInternal.Core.MSTestPackage;
15 using WixInternal.MSTestSupport;
13 using WixToolset.Util; 16 using WixToolset.Util;
14 17
15 [TestClass] 18 [TestClass]
diff --git a/src/ext/Util/util_t.proj b/src/ext/Util/util_t.proj
index 6ec63476..02be4b49 100644
--- a/src/ext/Util/util_t.proj
+++ b/src/ext/Util/util_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.Util\WixToolsetTest.Util.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.Util\WixToolsetTest.Util.csproj" />
7 <ProjectReference Include="wixext\WixToolset.Util.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.Util.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.Util.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.Util.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.Util\WixToolsetTest.Util.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/Util/wixext/UtilDecompiler.cs b/src/ext/Util/wixext/UtilDecompiler.cs
index cde64f8f..fb6d02e5 100644
--- a/src/ext/Util/wixext/UtilDecompiler.cs
+++ b/src/ext/Util/wixext/UtilDecompiler.cs
@@ -538,7 +538,7 @@ namespace WixToolset.Util
538 new XAttribute("Name", Path.GetFileNameWithoutExtension(row.FieldAsString(3))), // remove .lnk/.url extension because compiler extension adds it back for us 538 new XAttribute("Name", Path.GetFileNameWithoutExtension(row.FieldAsString(3))), // remove .lnk/.url extension because compiler extension adds it back for us
539 new XAttribute("Type", type), 539 new XAttribute("Type", type),
540 new XAttribute("Target", row.FieldAsString(4)), 540 new XAttribute("Target", row.FieldAsString(4)),
541 new XAttribute("IconFile", row.FieldAsString(6)), 541 AttributeIfNotNull("IconFile", row, 6),
542 NumericAttributeIfNotNull("IconIndex", row, 7) 542 NumericAttributeIfNotNull("IconIndex", row, 7)
543 ); 543 );
544 544
diff --git a/src/ext/Util/wixext/WixToolset.Util.wixext.csproj b/src/ext/Util/wixext/WixToolset.Util.wixext.csproj
index a4fcaf14..2a2a2f6a 100644
--- a/src/ext/Util/wixext/WixToolset.Util.wixext.csproj
+++ b/src/ext/Util/wixext/WixToolset.Util.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.Util</RootNamespace> 7 <RootNamespace>WixToolset.Util</RootNamespace>
8 <Description>WiX Toolset Utility extension</Description> 8 <Description>WiX Toolset Utility extension</Description>
9 <Title>WiX Toolset Utility extension</Title> 9 <Title>WiX Toolset Utility extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\util.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\util.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\util.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\util.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/VisualStudio/README.md b/src/ext/VisualStudio/README.md
index 76fbd4ce..bf48670c 100644
--- a/src/ext/VisualStudio/README.md
+++ b/src/ext/VisualStudio/README.md
@@ -1,2 +1,52 @@
1# VisualStudio.wixext 1# WixToolset.VisualStudio.wixext - Visual Studio WiX Toolset Extension
2WixToolset.VisualStudio.wixext - Visual Studio WiX Toolset Extension 2
3This WiX Extension provides support for configuring Visual Studio.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17Add the WiX Extension as a PackageReference to your .wixproj:
18
19```
20<Project Sdk="WixToolset.Sdk/7.0.0">
21 <ItemGroup>
22 <PackageReference Include="WixToolset.VisualStudio.wixext" Version="7.0.0" />
23 </ItemGroup>
24</Project>
25```
26
27Then add the extension's namespace:
28
29```
30<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
31 xmlns:vs="http://wixtoolset.org/schemas/v4/wxs/vs">
32
33 ..
34</Wix>
35```
36
37## Additional resources
38
39* [WiX Website][web]
40* [WiX Documentation][docs]
41* [WiX Issue Tracker][issues]
42* [WiX Discussions][discussions]
43
44
45[web]: https://www.firegiant.com/wixtoolset/
46[docs]: https://docs.firegiant.com/wixtoolset/
47[issues]: https://github.com/wixtoolset/issues/issues
48[discussions]: https://github.com/orgs/wixtoolset/discussions
49[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
50[osmf]: https://opensourcemaintenancefee.org/
51[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
52[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/ext/VisualStudio/visualstudio_t.proj b/src/ext/VisualStudio/visualstudio_t.proj
index 9b3f5b4f..d6c101e6 100644
--- a/src/ext/VisualStudio/visualstudio_t.proj
+++ b/src/ext/VisualStudio/visualstudio_t.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.Traversal"> 4<Project Sdk="Microsoft.Build.Traversal">
5 <ItemGroup> 5 <ItemGroup>
6 <ProjectReference Include="test\WixToolsetTest.VisualStudio\WixToolsetTest.VisualStudio.csproj" Targets="Test" /> 6 <ProjectReference Include="test\WixToolsetTest.VisualStudio\WixToolsetTest.VisualStudio.csproj" />
7 <ProjectReference Include="wixext\WixToolset.VisualStudio.wixext.csproj" Targets="Pack" Properties="NoBuild=true" /> 7 <ProjectReference Include="wixext\WixToolset.VisualStudio.wixext.csproj" Targets="Pack" Properties="NoBuild=true" />
8 </ItemGroup> 8 </ItemGroup>
9 9
@@ -14,4 +14,8 @@
14 14
15 <Delete Files="$(ArtifactsFolder)WixToolset.VisualStudio.wixext.*.nupkg" /> 15 <Delete Files="$(ArtifactsFolder)WixToolset.VisualStudio.wixext.*.nupkg" />
16 </Target> 16 </Target>
17
18 <Target Name="WixTest">
19 <MSBuild Projects="test\WixToolsetTest.VisualStudio\WixToolsetTest.VisualStudio.csproj" Targets="Test" />
20 </Target>
17</Project> 21</Project>
diff --git a/src/ext/VisualStudio/wixext/WixToolset.VisualStudio.wixext.csproj b/src/ext/VisualStudio/wixext/WixToolset.VisualStudio.wixext.csproj
index 0224c98c..eb410c35 100644
--- a/src/ext/VisualStudio/wixext/WixToolset.VisualStudio.wixext.csproj
+++ b/src/ext/VisualStudio/wixext/WixToolset.VisualStudio.wixext.csproj
@@ -7,6 +7,7 @@
7 <RootNamespace>WixToolset.VisualStudio</RootNamespace> 7 <RootNamespace>WixToolset.VisualStudio</RootNamespace>
8 <Description>WiX Toolset Visual Studio Extension</Description> 8 <Description>WiX Toolset Visual Studio Extension</Description>
9 <Title>WiX Toolset VS Extension</Title> 9 <Title>WiX Toolset VS Extension</Title>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
10 <DebugType>embedded</DebugType> 11 <DebugType>embedded</DebugType>
11 </PropertyGroup> 12 </PropertyGroup>
12 13
@@ -16,6 +17,10 @@
16 <EmbeddedResource Include="$(OutputPath)..\vs.wixlib" /> 17 <EmbeddedResource Include="$(OutputPath)..\vs.wixlib" />
17 </ItemGroup> 18 </ItemGroup>
18 19
20 <ItemGroup>
21 <None Include="..\README.md" Pack="true" PackagePath="\" />
22 </ItemGroup>
23
19 <ItemGroup Condition=" '$(NCrunch)'=='' "> 24 <ItemGroup Condition=" '$(NCrunch)'=='' ">
20 <ProjectReference Include="..\wixlib\vs.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" /> 25 <ProjectReference Include="..\wixlib\vs.wixproj" ReferenceOutputAssembly="false" SkipGetTargetFrameworkProperties="true" />
21 </ItemGroup> 26 </ItemGroup>
diff --git a/src/ext/ext_t.proj b/src/ext/ext_t.proj
index b51f3425..f9febb2e 100644
--- a/src/ext/ext_t.proj
+++ b/src/ext/ext_t.proj
@@ -7,18 +7,33 @@
7 <ProjectReference Include="Util\util_t.proj" BuildInParallel="false" Targets="Restore;Build" /> 7 <ProjectReference Include="Util\util_t.proj" BuildInParallel="false" Targets="Restore;Build" />
8 <ProjectReference Include="Bal\bal_t.proj" BuildInParallel="false" Targets="Restore;Build" /> 8 <ProjectReference Include="Bal\bal_t.proj" BuildInParallel="false" Targets="Restore;Build" />
9 9
10 <ProjectReference Include="NetFx\netfx_t.proj" BuildInParallel="false" Targets="Restore;Build" /> 10 <ProjectReference Include="Firewall\firewall_t.proj" Targets="Restore;Build" />
11 <ProjectReference Include="UI\ui_t.proj" Targets="Restore;Build" />
11 <ProjectReference Include="ComPlus\complus_t.proj" Targets="Restore;Build" /> 12 <ProjectReference Include="ComPlus\complus_t.proj" Targets="Restore;Build" />
12 <ProjectReference Include="Dependency\dependency_t.proj" Targets="Restore;Build" /> 13 <ProjectReference Include="Dependency\dependency_t.proj" Targets="Restore;Build" />
13 <ProjectReference Include="DirectX\directx_t.proj" Targets="Restore;Build" /> 14 <ProjectReference Include="DirectX\directx_t.proj" Targets="Restore;Build" />
14 <ProjectReference Include="Firewall\firewall_t.proj" Targets="Restore;Build" />
15 <ProjectReference Include="Http\http_t.proj" Targets="Restore;Build" /> 15 <ProjectReference Include="Http\http_t.proj" Targets="Restore;Build" />
16 <ProjectReference Include="Iis\iis_t.proj" Targets="Restore;Build" /> 16 <ProjectReference Include="Iis\iis_t.proj" Targets="Restore;Build" />
17 <ProjectReference Include="Msmq\msmq_t.proj" Targets="Restore;Build" /> 17 <ProjectReference Include="Msmq\msmq_t.proj" Targets="Restore;Build" />
18 <ProjectReference Include="NetFx\netfx_t.proj" Targets="Restore;Build" /> 18 <ProjectReference Include="NetFx\netfx_t.proj" Targets="Restore;Build" />
19 <ProjectReference Include="PowerShell\powershell_t.proj" Targets="Restore;Build" /> 19 <ProjectReference Include="PowerShell\powershell_t.proj" Targets="Restore;Build" />
20 <ProjectReference Include="Sql\sql_t.proj" Targets="Restore;Build" /> 20 <ProjectReference Include="Sql\sql_t.proj" Targets="Restore;Build" />
21 <ProjectReference Include="UI\ui_t.proj" Targets="Restore;Build" />
22 <ProjectReference Include="VisualStudio\visualstudio_t.proj" Targets="Restore;Build" /> 21 <ProjectReference Include="VisualStudio\visualstudio_t.proj" Targets="Restore;Build" />
22
23 <ProjectReference Include="Firewall\firewall_t.proj" Targets="WixTest" />
24 <ProjectReference Include="UI\ui_t.proj" Targets="WixTest" />
25 <ProjectReference Include="Util\util_t.proj" Targets="WixTest" />
26 <ProjectReference Include="Bal\bal_t.proj" Targets="WixTest" />
27 <ProjectReference Include="ComPlus\complus_t.proj" Targets="WixTest" />
28 <ProjectReference Include="Dependency\dependency_t.proj" Targets="WixTest" />
29 <ProjectReference Include="DirectX\directx_t.proj" Targets="WixTest" />
30 <ProjectReference Include="Http\http_t.proj" Targets="WixTest" />
31 <ProjectReference Include="Iis\iis_t.proj" Targets="WixTest" />
32 <ProjectReference Include="Msmq\msmq_t.proj" Targets="WixTest" />
33 <ProjectReference Include="NetFx\netfx_t.proj" Targets="WixTest" />
34 <ProjectReference Include="PowerShell\powershell_t.proj" Targets="WixTest" />
35 <ProjectReference Include="Sql\sql_t.proj" Targets="WixTest" />
36 <ProjectReference Include="VisualStudio\visualstudio_t.proj" Targets="WixTest" />
37
23 </ItemGroup> 38 </ItemGroup>
24</Project> 39</Project>