aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/clean.cmd1
-rw-r--r--src/dtf/SfxCA/ClrHost.cpp (renamed from src/samples/Dtf/Tools/SfxCA/ClrHost.cpp)0
-rw-r--r--src/dtf/SfxCA/EmbeddedUI.cpp (renamed from src/samples/Dtf/Tools/SfxCA/EmbeddedUI.cpp)0
-rw-r--r--src/dtf/SfxCA/EntryPoints.def (renamed from src/samples/Dtf/Tools/SfxCA/EntryPoints.def)0
-rw-r--r--src/dtf/SfxCA/EntryPoints.h (renamed from src/samples/Dtf/Tools/SfxCA/EntryPoints.h)0
-rw-r--r--src/dtf/SfxCA/Extract.cpp (renamed from src/samples/Dtf/Tools/SfxCA/Extract.cpp)0
-rw-r--r--src/dtf/SfxCA/RemoteMsi.cpp (renamed from src/samples/Dtf/Tools/SfxCA/RemoteMsi.cpp)0
-rw-r--r--src/dtf/SfxCA/RemoteMsiSession.h (renamed from src/samples/Dtf/Tools/SfxCA/RemoteMsiSession.h)0
-rw-r--r--src/dtf/SfxCA/SfxCA.cpp (renamed from src/samples/Dtf/Tools/SfxCA/SfxCA.cpp)0
-rw-r--r--src/dtf/SfxCA/SfxCA.rc (renamed from src/samples/Dtf/Tools/SfxCA/SfxCA.rc)0
-rw-r--r--src/dtf/SfxCA/SfxCA.vcxproj (renamed from src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj)40
-rw-r--r--src/dtf/SfxCA/SfxCA.vcxproj.filters (renamed from src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj.filters)0
-rw-r--r--src/dtf/SfxCA/SfxUtil.cpp (renamed from src/samples/Dtf/Tools/SfxCA/SfxUtil.cpp)0
-rw-r--r--src/dtf/SfxCA/SfxUtil.h (renamed from src/samples/Dtf/Tools/SfxCA/SfxUtil.h)0
-rw-r--r--src/dtf/SfxCA/precomp.cpp (renamed from src/samples/Dtf/Tools/SfxCA/precomp.cpp)0
-rw-r--r--src/dtf/SfxCA/precomp.h (renamed from src/samples/Dtf/Tools/SfxCA/precomp.h)0
-rw-r--r--src/dtf/SfxCA/sfxca_t.proj7
-rw-r--r--src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.csproj17
-rw-r--r--src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.nuspec32
-rw-r--r--src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.targets (renamed from src/wix/WixToolset.Sdk/tools/wix.ca.targets)18
-rw-r--r--src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.v3.ncrunchproject5
-rw-r--r--src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.csproj40
-rw-r--r--src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.nuspec18
-rw-r--r--src/dtf/WixToolset.Dtf.MSBuild/tools/wix.ca.targets123
-rw-r--r--src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.cs (renamed from src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.cs)51
-rw-r--r--src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.exe.manifest11
-rw-r--r--src/dtf/WixToolset.Dtf.MakeSfxCA/WixToolset.Dtf.MakeSfxCA.csproj19
-rw-r--r--src/dtf/WixToolset.Dtf.MakeSfxCA/app.config7
-rw-r--r--src/dtf/WixToolset.Dtf.Resources/ResourceCollection.cs36
-rw-r--r--src/dtf/dtf.cmd2
-rw-r--r--src/dtf/dtf.sln102
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs (renamed from src/dtf/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj (renamed from src/dtf/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj)6
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj (renamed from src/dtf/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj)6
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs (renamed from src/dtf/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs (renamed from src/dtf/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs (renamed from src/dtf/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs (renamed from src/dtf/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj (renamed from src/dtf/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj)4
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj)2
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj)8
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs)0
-rw-r--r--src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj (renamed from src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj)4
-rw-r--r--src/internal/SetBuildNumber/Directory.Packages.props.pp1
-rw-r--r--src/internal/WixBuildFinalize/WixBuildFinalize.proj2
-rw-r--r--src/samples/Dtf/EmbeddedUI/AssemblyInfo.cs5
-rw-r--r--src/samples/Dtf/ManagedCA/AssemblyInfo.cs5
-rw-r--r--src/samples/Dtf/ManagedCA/ManagedCA.csproj33
-rw-r--r--src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.csproj27
-rw-r--r--src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.exe.manifest20
-rw-r--r--src/samples/Dtf/Tools/MakeSfxCA/app.config10
-rw-r--r--src/samples/Dtf/Tools/SfxCA/packages.config4
-rw-r--r--src/samples/Dtf/Tools/Tools.proj15
-rw-r--r--src/test/dtf/Directory.Build.props (renamed from src/dtf/WixToolset.Dtf.MSBuild/build/WixToolset.Dtf.MSBuild.props)9
-rw-r--r--src/test/dtf/Directory.Build.targets6
-rw-r--r--src/test/dtf/DtfE2ETests.sln28
-rw-r--r--src/test/dtf/EmbeddedUI/AssemblyInfo.cs3
-rw-r--r--src/test/dtf/EmbeddedUI/EmbeddedUI.csproj (renamed from src/samples/Dtf/EmbeddedUI/EmbeddedUI.csproj)21
-rw-r--r--src/test/dtf/EmbeddedUI/InstallProgressCounter.cs (renamed from src/samples/Dtf/EmbeddedUI/InstallProgressCounter.cs)4
-rw-r--r--src/test/dtf/EmbeddedUI/SampleEmbeddedUI.cs (renamed from src/samples/Dtf/EmbeddedUI/SampleEmbeddedUI.cs)4
-rw-r--r--src/test/dtf/EmbeddedUI/SetupWizard.xaml (renamed from src/samples/Dtf/EmbeddedUI/SetupWizard.xaml)2
-rw-r--r--src/test/dtf/EmbeddedUI/SetupWizard.xaml.cs (renamed from src/samples/Dtf/EmbeddedUI/SetupWizard.xaml.cs)4
-rw-r--r--src/test/dtf/SampleCA/SampleCA.cs (renamed from src/samples/Dtf/ManagedCA/SampleCAs.cs)6
-rw-r--r--src/test/dtf/SampleCA/SampleCA.csproj10
-rw-r--r--src/test/test.cmd2
-rw-r--r--src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj1
72 files changed, 326 insertions, 455 deletions
diff --git a/src/clean.cmd b/src/clean.cmd
index 94f9a618..5bedadbd 100644
--- a/src/clean.cmd
+++ b/src/clean.cmd
@@ -29,6 +29,7 @@ if exist "%_NUGET_CACHE%\wixtoolset.data" rd /s/q "%_NUGET_CACHE%\wixtoolset.dat
29if exist "%_NUGET_CACHE%\wixtoolset.dependency.wixext" rd /s/q "%_NUGET_CACHE%\wixtoolset.dependency.wixext" 29if exist "%_NUGET_CACHE%\wixtoolset.dependency.wixext" rd /s/q "%_NUGET_CACHE%\wixtoolset.dependency.wixext"
30if exist "%_NUGET_CACHE%\wixtoolset.dtf.compression" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.compression" 30if exist "%_NUGET_CACHE%\wixtoolset.dtf.compression" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.compression"
31if exist "%_NUGET_CACHE%\wixtoolset.dtf.compression.cab" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.compression.cab" 31if exist "%_NUGET_CACHE%\wixtoolset.dtf.compression.cab" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.compression.cab"
32if exist "%_NUGET_CACHE%\wixtoolset.dtf.customaction" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.customaction"
32if exist "%_NUGET_CACHE%\wixtoolset.dtf.resources" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.resources" 33if exist "%_NUGET_CACHE%\wixtoolset.dtf.resources" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.resources"
33if exist "%_NUGET_CACHE%\wixtoolset.dtf.windowsinstaller" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.windowsinstaller" 34if exist "%_NUGET_CACHE%\wixtoolset.dtf.windowsinstaller" rd /s/q "%_NUGET_CACHE%\wixtoolset.dtf.windowsinstaller"
34if exist "%_NUGET_CACHE%\wixtoolset.dutil" rd /s/q "%_NUGET_CACHE%\wixtoolset.dutil" 35if exist "%_NUGET_CACHE%\wixtoolset.dutil" rd /s/q "%_NUGET_CACHE%\wixtoolset.dutil"
diff --git a/src/samples/Dtf/Tools/SfxCA/ClrHost.cpp b/src/dtf/SfxCA/ClrHost.cpp
index 1988fb2a..1988fb2a 100644
--- a/src/samples/Dtf/Tools/SfxCA/ClrHost.cpp
+++ b/src/dtf/SfxCA/ClrHost.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/EmbeddedUI.cpp b/src/dtf/SfxCA/EmbeddedUI.cpp
index a49cdeec..a49cdeec 100644
--- a/src/samples/Dtf/Tools/SfxCA/EmbeddedUI.cpp
+++ b/src/dtf/SfxCA/EmbeddedUI.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/EntryPoints.def b/src/dtf/SfxCA/EntryPoints.def
index dd28b920..dd28b920 100644
--- a/src/samples/Dtf/Tools/SfxCA/EntryPoints.def
+++ b/src/dtf/SfxCA/EntryPoints.def
diff --git a/src/samples/Dtf/Tools/SfxCA/EntryPoints.h b/src/dtf/SfxCA/EntryPoints.h
index bd2fa970..bd2fa970 100644
--- a/src/samples/Dtf/Tools/SfxCA/EntryPoints.h
+++ b/src/dtf/SfxCA/EntryPoints.h
diff --git a/src/samples/Dtf/Tools/SfxCA/Extract.cpp b/src/dtf/SfxCA/Extract.cpp
index 171cf52f..171cf52f 100644
--- a/src/samples/Dtf/Tools/SfxCA/Extract.cpp
+++ b/src/dtf/SfxCA/Extract.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/RemoteMsi.cpp b/src/dtf/SfxCA/RemoteMsi.cpp
index ba59fdf7..ba59fdf7 100644
--- a/src/samples/Dtf/Tools/SfxCA/RemoteMsi.cpp
+++ b/src/dtf/SfxCA/RemoteMsi.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/RemoteMsiSession.h b/src/dtf/SfxCA/RemoteMsiSession.h
index 90c7c01f..90c7c01f 100644
--- a/src/samples/Dtf/Tools/SfxCA/RemoteMsiSession.h
+++ b/src/dtf/SfxCA/RemoteMsiSession.h
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxCA.cpp b/src/dtf/SfxCA/SfxCA.cpp
index 06319f1e..06319f1e 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxCA.cpp
+++ b/src/dtf/SfxCA/SfxCA.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxCA.rc b/src/dtf/SfxCA/SfxCA.rc
index 4d78194b..4d78194b 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxCA.rc
+++ b/src/dtf/SfxCA/SfxCA.rc
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj b/src/dtf/SfxCA/SfxCA.vcxproj
index 4684d6e0..96aa69e0 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj
+++ b/src/dtf/SfxCA/SfxCA.vcxproj
@@ -1,19 +1,28 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
3<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 4<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
4 <ItemGroup Label="ProjectConfigurations"> 5 <ItemGroup Label="ProjectConfigurations">
5 <ProjectConfiguration Include="Debug|Win32"> 6 <ProjectConfiguration Include="Debug|ARM64">
6 <Configuration>Debug</Configuration> 7 <Configuration>Debug</Configuration>
7 <Platform>Win32</Platform> 8 <Platform>ARM64</Platform>
8 </ProjectConfiguration> 9 </ProjectConfiguration>
9 <ProjectConfiguration Include="Release|Win32"> 10 <ProjectConfiguration Include="Debug|Win32">
10 <Configuration>Release</Configuration> 11 <Configuration>Debug</Configuration>
11 <Platform>Win32</Platform> 12 <Platform>Win32</Platform>
12 </ProjectConfiguration> 13 </ProjectConfiguration>
13 <ProjectConfiguration Include="Debug|x64"> 14 <ProjectConfiguration Include="Debug|x64">
14 <Configuration>Debug</Configuration> 15 <Configuration>Debug</Configuration>
15 <Platform>x64</Platform> 16 <Platform>x64</Platform>
16 </ProjectConfiguration> 17 </ProjectConfiguration>
18 <ProjectConfiguration Include="Release|ARM64">
19 <Configuration>Release</Configuration>
20 <Platform>ARM64</Platform>
21 </ProjectConfiguration>
22 <ProjectConfiguration Include="Release|Win32">
23 <Configuration>Release</Configuration>
24 <Platform>Win32</Platform>
25 </ProjectConfiguration>
17 <ProjectConfiguration Include="Release|x64"> 26 <ProjectConfiguration Include="Release|x64">
18 <Configuration>Release</Configuration> 27 <Configuration>Release</Configuration>
19 <Platform>x64</Platform> 28 <Platform>x64</Platform>
@@ -23,15 +32,18 @@
23 <PropertyGroup Label="Globals"> 32 <PropertyGroup Label="Globals">
24 <ProjectGuid>{55D5BA28-D427-4F53-80C2-FE9EF23C1553}</ProjectGuid> 33 <ProjectGuid>{55D5BA28-D427-4F53-80C2-FE9EF23C1553}</ProjectGuid>
25 <ConfigurationType>DynamicLibrary</ConfigurationType> 34 <ConfigurationType>DynamicLibrary</ConfigurationType>
26 <TargetName>SfxCA</TargetName>
27 <CharacterSet>Unicode</CharacterSet> 35 <CharacterSet>Unicode</CharacterSet>
36 <SignOutput>false</SignOutput>
28 <ProjectModuleDefinitionFile>EntryPoints.def</ProjectModuleDefinitionFile> 37 <ProjectModuleDefinitionFile>EntryPoints.def</ProjectModuleDefinitionFile>
29 </PropertyGroup> 38 </PropertyGroup>
39
30 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> 40 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
31 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> 41 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
42
32 <PropertyGroup> 43 <PropertyGroup>
33 <ProjectAdditionalLinkLibraries>msi.lib;cabinet.lib;shlwapi.lib</ProjectAdditionalLinkLibraries> 44 <ProjectAdditionalLinkLibraries>msi.lib;cabinet.lib;shlwapi.lib</ProjectAdditionalLinkLibraries>
34 </PropertyGroup> 45 </PropertyGroup>
46
35 <ItemGroup> 47 <ItemGroup>
36 <ClCompile Include="ClrHost.cpp" /> 48 <ClCompile Include="ClrHost.cpp" />
37 <ClCompile Include="Extract.cpp" /> 49 <ClCompile Include="Extract.cpp" />
@@ -49,19 +61,19 @@
49 <ClInclude Include="RemoteMsiSession.h" /> 61 <ClInclude Include="RemoteMsiSession.h" />
50 <ClInclude Include="SfxUtil.h" /> 62 <ClInclude Include="SfxUtil.h" />
51 </ItemGroup> 63 </ItemGroup>
64
52 <ItemGroup> 65 <ItemGroup>
53 <None Include="EntryPoints.def" /> 66 <None Include="EntryPoints.def" />
54 <None Include="packages.config" />
55 </ItemGroup> 67 </ItemGroup>
68
56 <ItemGroup> 69 <ItemGroup>
57 <ResourceCompile Include="SfxCA.rc" /> 70 <ResourceCompile Include="SfxCA.rc" />
58 </ItemGroup> 71 </ItemGroup>
72
73 <ItemGroup>
74 <PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" />
75 <PackageReference Include="GitInfo" PrivateAssets="All" />
76 </ItemGroup>
77
59 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> 78 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
60 <Import Project="..\..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets')" /> 79</Project>
61 <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
62 <PropertyGroup>
63 <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
64 </PropertyGroup>
65 <Error Condition="!Exists('..\..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets'))" />
66 </Target>
67</Project> \ No newline at end of file
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj.filters b/src/dtf/SfxCA/SfxCA.vcxproj.filters
index a5ebf693..a5ebf693 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxCA.vcxproj.filters
+++ b/src/dtf/SfxCA/SfxCA.vcxproj.filters
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxUtil.cpp b/src/dtf/SfxCA/SfxUtil.cpp
index 1bf2c5b2..1bf2c5b2 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxUtil.cpp
+++ b/src/dtf/SfxCA/SfxUtil.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/SfxUtil.h b/src/dtf/SfxCA/SfxUtil.h
index af12d8dd..af12d8dd 100644
--- a/src/samples/Dtf/Tools/SfxCA/SfxUtil.h
+++ b/src/dtf/SfxCA/SfxUtil.h
diff --git a/src/samples/Dtf/Tools/SfxCA/precomp.cpp b/src/dtf/SfxCA/precomp.cpp
index ce82c1d7..ce82c1d7 100644
--- a/src/samples/Dtf/Tools/SfxCA/precomp.cpp
+++ b/src/dtf/SfxCA/precomp.cpp
diff --git a/src/samples/Dtf/Tools/SfxCA/precomp.h b/src/dtf/SfxCA/precomp.h
index 48d4f011..48d4f011 100644
--- a/src/samples/Dtf/Tools/SfxCA/precomp.h
+++ b/src/dtf/SfxCA/precomp.h
diff --git a/src/dtf/SfxCA/sfxca_t.proj b/src/dtf/SfxCA/sfxca_t.proj
new file mode 100644
index 00000000..1e823be1
--- /dev/null
+++ b/src/dtf/SfxCA/sfxca_t.proj
@@ -0,0 +1,7 @@
1<Project Sdk="Microsoft.Build.Traversal">
2 <ItemGroup>
3 <ProjectReference Include="SfxCA.vcxproj" Properties="Platform=x86" />
4 <ProjectReference Include="SfxCA.vcxproj" Properties="Platform=x64" />
5 <ProjectReference Include="SfxCA.vcxproj" Properties="Platform=ARM64" />
6 </ItemGroup>
7</Project>
diff --git a/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.csproj b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.csproj
new file mode 100644
index 00000000..379aa194
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.csproj
@@ -0,0 +1,17 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project Sdk="Microsoft.NET.Sdk">
5 <PropertyGroup>
6 <TargetFramework>net472</TargetFramework>
7 <IncludeBuildOutput>false</IncludeBuildOutput>
8 <Title>The WiX Toolset Managed CustomAction Framework.</Title>
9 <Description>The WiX Toolset lets developers create managed custom actions for the Windows Installer. This package contains the tools necessary to convert your project into a managed custom action.</Description>
10
11 <NuspecBasePath>$(OutputPath)</NuspecBasePath>
12 </PropertyGroup>
13
14 <ItemGroup>
15 <ProjectReference Include="..\WixToolset.Dtf.MakeSfxCA\WixToolset.Dtf.MakeSfxCA.csproj" />
16 </ItemGroup>
17</Project>
diff --git a/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.nuspec b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.nuspec
new file mode 100644
index 00000000..4550e629
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.nuspec
@@ -0,0 +1,32 @@
1<?xml version="1.0" encoding="utf-8"?>
2<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
3 <metadata>
4 <id>$id$</id>
5 <version>$version$</version>
6 <title>$title$</title>
7 <description>$description$</description>
8 <authors>$authors$</authors>
9 <icon>wix-white-bg.png</icon>
10 <license type="expression">MS-RL</license>
11 <requireLicenseAcceptance>false</requireLicenseAcceptance>
12 <copyright>$copyright$</copyright>
13 <projectUrl>$projectUrl$</projectUrl>
14 <repository type="$repositorytype$" url="$repositoryurl$" commit="$repositorycommit$" />
15 <dependencies>
16 <dependency id="WixToolset.Dtf.WindowsInstaller" version="$version$" />
17 </dependencies>
18 </metadata>
19
20 <files>
21 <file src="$projectFolder$\$id$.targets" target="build" />
22 <file src="$projectFolder$\..\..\internal\images\wix-white-bg.png" />
23 <file src="net472\WixToolset.Dtf.MakeSfxCA.exe" target="tools" />
24 <file src="net472\WixToolset.Dtf.MakeSfxCA.exe.config" target="tools" />
25 <file src="net472\WixToolset.Dtf.Compression.dll" target="tools" />
26 <file src="net472\WixToolset.Dtf.Compression.Cab.dll" target="tools" />
27 <file src="net472\WixToolset.Dtf.Resources.dll" target="tools" />
28 <file src="x64\SfxCA.dll" target="tools\x64" />
29 <file src="x86\SfxCA.dll" target="tools\x86" />
30 <file src="ARM64\SfxCA.dll" target="tools\arm64" />
31 </files>
32</package>
diff --git a/src/wix/WixToolset.Sdk/tools/wix.ca.targets b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.targets
index 4578c2d8..127bb29d 100644
--- a/src/wix/WixToolset.Sdk/tools/wix.ca.targets
+++ b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.targets
@@ -1,8 +1,7 @@
1<?xml version="1.0" encoding="utf-8" ?> 1<?xml version="1.0" encoding="utf-8" ?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 3
4 4<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
6 5
7 <Import Project="$(CustomBeforeWixCATargets)" Condition=" '$(CustomBeforeWixCATargets)' != '' and Exists('$(CustomBeforeWixCATargets)')" /> 6 <Import Project="$(CustomBeforeWixCATargets)" Condition=" '$(CustomBeforeWixCATargets)' != '' and Exists('$(CustomBeforeWixCATargets)')" />
8 7
@@ -11,13 +10,12 @@
11 10
12 <TargetCAFileName Condition=" '$(TargetCAFileName)' == '' ">$(TargetName).CA$(TargetExt)</TargetCAFileName> 11 <TargetCAFileName Condition=" '$(TargetCAFileName)' == '' ">$(TargetName).CA$(TargetExt)</TargetCAFileName>
13 12
14 <WixSdkPath Condition=" '$(WixSdkPath)' == '' ">$(MSBuildThisFileDirectory)</WixSdkPath> 13 <MakeSfxCAPath Condition=" '$(MakeSfxCAPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\</MakeSfxCAPath>
15 <WixSdkX86Path Condition=" '$(WixSdkX86Path)' == '' ">$(WixSdkPath)x86\</WixSdkX86Path>
16 <WixSdkX64Path Condition=" '$(WixSdkX64Path)' == '' ">$(WixSdkPath)x64\</WixSdkX64Path>
17 14
18 <MakeSfxCA Condition=" '$(MakeSfxCA)' == '' ">$(WixSdkPath)MakeSfxCA.exe</MakeSfxCA> 15 <MakeSfxCA Condition=" '$(MakeSfxCA)' == '' ">$(MakeSfxCAPath)WixToolset.Dtf.MakeSfxCA.exe</MakeSfxCA>
19 <SfxCADll Condition=" '$(SfxCADll)' == '' and '$(Platform)' == 'x64' ">$(WixSdkX64Path)SfxCA.dll</SfxCADll> 16 <SfxCADll Condition=" '$(SfxCADll)' == '' and '$(Platform)' == 'ARM64' ">$(MakeSfxCAPath)arm64\SfxCA.dll</SfxCADll>
20 <SfxCADll Condition=" '$(SfxCADll)' == '' ">$(WixSdkX86Path)SfxCA.dll</SfxCADll> 17 <SfxCADll Condition=" '$(SfxCADll)' == '' and '$(Platform)' == 'x64' ">$(MakeSfxCAPath)x64\SfxCA.dll</SfxCADll>
18 <SfxCADll Condition=" '$(SfxCADll)' == '' ">$(MakeSfxCAPath)x86\SfxCA.dll</SfxCADll>
21 </PropertyGroup> 19 </PropertyGroup>
22 20
23 <!-- 21 <!--
@@ -74,7 +72,7 @@
74 <!-- Run the MakeSfxCA.exe CA packaging tool. --> 72 <!-- Run the MakeSfxCA.exe CA packaging tool. -->
75 <Exec Command='"$(MakeSfxCA)" "@(IntermediateCAPackage)" "$(SfxCADll)" "@(IntermediateCAAssembly)" "$(CustomActionContents)"' 73 <Exec Command='"$(MakeSfxCA)" "@(IntermediateCAPackage)" "$(SfxCADll)" "@(IntermediateCAAssembly)" "$(CustomActionContents)"'
76 WorkingDirectory="$(ProjectDir)" /> 74 WorkingDirectory="$(ProjectDir)" />
77 75
78 <!-- Add modules to be copied to output dir. --> 76 <!-- Add modules to be copied to output dir. -->
79 <ItemGroup> 77 <ItemGroup>
80 <AddModules Include="@(IntermediateCAPackage)" /> 78 <AddModules Include="@(IntermediateCAPackage)" />
diff --git a/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.v3.ncrunchproject b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.v3.ncrunchproject
new file mode 100644
index 00000000..cf22dfa9
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.CustomAction/WixToolset.Dtf.CustomAction.v3.ncrunchproject
@@ -0,0 +1,5 @@
1<ProjectConfiguration>
2 <Settings>
3 <HiddenComponentWarnings />
4 </Settings>
5</ProjectConfiguration> \ No newline at end of file
diff --git a/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.csproj b/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.csproj
deleted file mode 100644
index 1c81b861..00000000
--- a/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.csproj
+++ /dev/null
@@ -1,40 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project Sdk="Microsoft.NET.Sdk">
5
6 <PropertyGroup>
7 <TargetFramework>netcoreapp3.1</TargetFramework>
8 <IncludeBuildOutput>false</IncludeBuildOutput>
9 <Description>WiX Toolset Dtf MSBuild integration</Description>
10 <NuspecFile>$(MSBuildThisFileName).nuspec</NuspecFile>
11 <NuspecBasePath>$(OutputPath)publish\WixToolset.Dtf.MSBuild\</NuspecBasePath>
12 <NuspecProperties>Id=$(MSBuildThisFileName);Authors=$(Authors);Copyright=$(Copyright);Description=$(Description)</NuspecProperties>
13 </PropertyGroup>
14
15 <ItemGroup>
16 <None Remove="build\WixToolset.Dtf.MSBuild.props" />
17 <None Remove="tools\wix.ca.targets" />
18 </ItemGroup>
19
20 <ItemGroup>
21 <Content Include="build\WixToolset.Dtf.MSBuild.props">
22 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
23 </Content>
24 <Content Include="tools\wix.ca.targets">
25 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
26 </Content>
27 </ItemGroup>
28
29 <PropertyGroup>
30 <GenerateNuspecDependsOn>$(GenerateNuspecDependsOn);SetNuspecVersion</GenerateNuspecDependsOn>
31 </PropertyGroup>
32
33 <Target Name="SetNuspecVersion">
34 <Error Text="Cannot pack $(MSBuildThisFileName) until all projects are published to: '$(NuspecBasePath)'. Run appveyor.cmd to publish projects properly." Condition=" !Exists('$(NuspecBasePath)') " />
35
36 <PropertyGroup>
37 <NuspecProperties>$(NuspecProperties);Version=$(Version);ProjectFolder=$(MSBuildThisFileDirectory)</NuspecProperties>
38 </PropertyGroup>
39 </Target>
40</Project>
diff --git a/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.nuspec b/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.nuspec
deleted file mode 100644
index 7f819cdb..00000000
--- a/src/dtf/WixToolset.Dtf.MSBuild/WixToolset.Dtf.MSBuild.nuspec
+++ /dev/null
@@ -1,18 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
3 <metadata>
4 <id>$id$</id>
5 <version>$version$</version>
6 <authors>$authors$</authors>
7 <owners>$authors$</owners>
8 <license type="expression">MS-RL</license>
9 <requireLicenseAcceptance>false</requireLicenseAcceptance>
10 <description>$description$</description>
11 <copyright>$copyright$</copyright>
12 </metadata>
13
14 <files>
15 <file src="build\**\*" target="build" />
16 <file src="tools\**\*" target="tools" />
17 </files>
18</package>
diff --git a/src/dtf/WixToolset.Dtf.MSBuild/tools/wix.ca.targets b/src/dtf/WixToolset.Dtf.MSBuild/tools/wix.ca.targets
deleted file mode 100644
index 4578c2d8..00000000
--- a/src/dtf/WixToolset.Dtf.MSBuild/tools/wix.ca.targets
+++ /dev/null
@@ -1,123 +0,0 @@
1<?xml version="1.0" encoding="utf-8" ?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
6
7 <Import Project="$(CustomBeforeWixCATargets)" Condition=" '$(CustomBeforeWixCATargets)' != '' and Exists('$(CustomBeforeWixCATargets)')" />
8
9 <PropertyGroup>
10 <WixCATargetsImported>true</WixCATargetsImported>
11
12 <TargetCAFileName Condition=" '$(TargetCAFileName)' == '' ">$(TargetName).CA$(TargetExt)</TargetCAFileName>
13
14 <WixSdkPath Condition=" '$(WixSdkPath)' == '' ">$(MSBuildThisFileDirectory)</WixSdkPath>
15 <WixSdkX86Path Condition=" '$(WixSdkX86Path)' == '' ">$(WixSdkPath)x86\</WixSdkX86Path>
16 <WixSdkX64Path Condition=" '$(WixSdkX64Path)' == '' ">$(WixSdkPath)x64\</WixSdkX64Path>
17
18 <MakeSfxCA Condition=" '$(MakeSfxCA)' == '' ">$(WixSdkPath)MakeSfxCA.exe</MakeSfxCA>
19 <SfxCADll Condition=" '$(SfxCADll)' == '' and '$(Platform)' == 'x64' ">$(WixSdkX64Path)SfxCA.dll</SfxCADll>
20 <SfxCADll Condition=" '$(SfxCADll)' == '' ">$(WixSdkX86Path)SfxCA.dll</SfxCADll>
21 </PropertyGroup>
22
23 <!--
24 ==================================================================================================
25 PackCustomAction
26
27 Creates an MSI managed custom action package that includes the custom action assembly,
28 local assembly dependencies, and project content files.
29
30 [IN]
31 @(IntermediateAssembly) - Managed custom action assembly.
32 @(Content) - Project items of type Content will be included in the package.
33 $(CustomActionContents) - Optional space-delimited list of additional files to include.
34
35 [OUT]
36 $(IntermediateOutputPath)$(TargetCAFileName) - Managed custom action package with unmanaged stub.
37 ==================================================================================================
38 -->
39 <Target Name="PackCustomAction"
40 Inputs="@(IntermediateAssembly);@(Content);$(CustomActionContents)"
41 Outputs="$(IntermediateOutputPath)$(TargetCAFileName)">
42
43 <!-- Find all referenced items marked CopyLocal, but exclude non-binary files. -->
44 <ItemGroup>
45 <CustomActionReferenceContents Include="@(ReferenceCopyLocalPaths)"
46 Condition=" '%(Extension)' == '.dll' or '%(Extension)' == '.exe' " />
47 <CustomActionReferenceContents Include="@(ReferenceComWrappersToCopyLocal)"
48 Condition=" '%(Extension)' == '.dll' or '%(Extension)' == '.exe' " />
49
50 <!-- include PDBs for Debug only -->
51 <CustomActionReferenceContents Include="@(IntermediateAssembly->'%(RootDir)%(Directory)%(Filename).pdb')"
52 Condition=" Exists('%(RootDir)%(Directory)%(Filename).pdb') and '$(Configuration)' == 'Debug' " />
53 <CustomActionReferenceContents Include="@(ReferenceCopyLocalPaths)"
54 Condition=" '%(Extension)' == '.pdb' and '$(Configuration)' == 'Debug' " />
55 <CustomActionReferenceContents Include="@(ReferenceComWrappersToCopyLocal)"
56 Condition=" '%(Extension)' == '.pdb' and '$(Configuration)' == 'Debug' " />
57 </ItemGroup>
58
59 <!--
60 Items to include in the CA package:
61 - Reference assemblies marked CopyLocal
62 - Project items of type Content
63 - Additional items in the CustomActionContents property
64 -->
65 <PropertyGroup>
66 <CustomActionContents>@(CustomActionReferenceContents);@(Content->'%(FullPath)');$(CustomActionContents)</CustomActionContents>
67 </PropertyGroup>
68
69 <ItemGroup>
70 <IntermediateCAAssembly Include="@(IntermediateAssembly->'%(FullPath)')" />
71 <IntermediateCAPackage Include="@(IntermediateAssembly->'%(RootDir)%(Directory)$(TargetCAFileName)')" />
72 </ItemGroup>
73
74 <!-- Run the MakeSfxCA.exe CA packaging tool. -->
75 <Exec Command='"$(MakeSfxCA)" "@(IntermediateCAPackage)" "$(SfxCADll)" "@(IntermediateCAAssembly)" "$(CustomActionContents)"'
76 WorkingDirectory="$(ProjectDir)" />
77
78 <!-- Add modules to be copied to output dir. -->
79 <ItemGroup>
80 <AddModules Include="@(IntermediateCAPackage)" />
81 </ItemGroup>
82 </Target>
83
84 <!--
85 ==================================================================================================
86 CleanCustomAction
87
88 Cleans the .CA.dll binary created by the PackCustomAction target.
89
90 ==================================================================================================
91 -->
92 <Target Name="CleanCustomAction">
93 <Delete Files="$(IntermediateOutputPath)$(TargetCAFileName)"
94 TreatErrorsAsWarnings="true" />
95 </Target>
96
97 <!--
98 ==================================================================================================
99 AfterCompile (redefinition)
100
101 Calls the PackCustomAction target after compiling.
102 Overrides the empty AfterCompile target from Microsoft.Common.targets.
103
104 ==================================================================================================
105 -->
106 <Target Name="AfterCompile"
107 DependsOnTargets="PackCustomAction" />
108
109 <!--
110 ==================================================================================================
111 BeforeClean (redefinition)
112
113 Calls the CleanCustomAction target before cleaning.
114 Overrides the empty AfterCompile target from Microsoft.Common.targets.
115
116 ==================================================================================================
117 -->
118 <Target Name="BeforeClean"
119 DependsOnTargets="CleanCustomAction" />
120
121 <Import Project="$(CustomAfterWixCATargets)" Condition=" '$(CustomAfterWixCATargets)' != '' and Exists('$(CustomAfterWixCATargets)')" />
122
123</Project>
diff --git a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.cs b/src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.cs
index 76ff79b3..d701da20 100644
--- a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.cs
+++ b/src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.cs
@@ -1,6 +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 2
3namespace WixToolset.Dtf.Tools.MakeSfxCA 3namespace WixToolset.Dtf.MakeSfxCA
4{ 4{
5 using System; 5 using System;
6 using System.IO; 6 using System.IO;
@@ -8,10 +8,10 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
8 using System.Security; 8 using System.Security;
9 using System.Text; 9 using System.Text;
10 using System.Reflection; 10 using System.Reflection;
11 using Compression; 11 using WixToolset.Dtf.Compression;
12 using Compression.Cab; 12 using WixToolset.Dtf.Compression.Cab;
13 using Resources; 13 using WixToolset.Dtf.Resources;
14 using ResourceCollection = Resources.ResourceCollection; 14 using ResourceCollection = WixToolset.Dtf.Resources.ResourceCollection;
15 15
16 /// <summary> 16 /// <summary>
17 /// Command-line tool for building self-extracting custom action packages. 17 /// Command-line tool for building self-extracting custom action packages.
@@ -30,11 +30,10 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
30 /// <param name="w">Console text writer.</param> 30 /// <param name="w">Console text writer.</param>
31 public static void Usage(TextWriter w) 31 public static void Usage(TextWriter w)
32 { 32 {
33 w.WriteLine("Deployment Tools Foundation custom action packager version {0}", 33 w.WriteLine("WiX Toolset custom action packager version {0}", Assembly.GetExecutingAssembly().GetName().Version);
34 Assembly.GetExecutingAssembly().GetName().Version);
35 w.WriteLine("Copyright (C) .NET Foundation and contributors. All rights reserved."); 34 w.WriteLine("Copyright (C) .NET Foundation and contributors. All rights reserved.");
36 w.WriteLine(); 35 w.WriteLine();
37 w.WriteLine("Usage: MakeSfxCA <outputca.dll> SfxCA.dll <inputca.dll> [support files ...]"); 36 w.WriteLine("Usage: WixToolset.Dtf.MakeSfxCA <outputca.dll> SfxCA.dll <inputca.dll> [support files ...]");
38 w.WriteLine(); 37 w.WriteLine();
39 w.WriteLine("Makes a self-extracting managed MSI CA or UI DLL package."); 38 w.WriteLine("Makes a self-extracting managed MSI CA or UI DLL package.");
40 w.WriteLine("Support files must include " + MakeSfxCA.REQUIRED_WI_ASSEMBLY); 39 w.WriteLine("Support files must include " + MakeSfxCA.REQUIRED_WI_ASSEMBLY);
@@ -90,12 +89,12 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
90 { 89 {
91 MakeSfxCA.log = log; 90 MakeSfxCA.log = log;
92 91
93 if (string.IsNullOrEmpty(output)) 92 if (String.IsNullOrEmpty(output))
94 { 93 {
95 throw new ArgumentNullException("output"); 94 throw new ArgumentNullException("output");
96 } 95 }
97 96
98 if (string.IsNullOrEmpty(sfxDll)) 97 if (String.IsNullOrEmpty(sfxDll))
99 { 98 {
100 throw new ArgumentNullException("sfxDll"); 99 throw new ArgumentNullException("sfxDll");
101 } 100 }
@@ -123,7 +122,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
123 var foundWIAssembly = false; 122 var foundWIAssembly = false;
124 foreach (var input in inputsMap.Keys) 123 foreach (var input in inputsMap.Keys)
125 { 124 {
126 if (string.Compare(input, MakeSfxCA.REQUIRED_WI_ASSEMBLY, 125 if (String.Compare(input, MakeSfxCA.REQUIRED_WI_ASSEMBLY,
127 StringComparison.OrdinalIgnoreCase) == 0) 126 StringComparison.OrdinalIgnoreCase) == 0)
128 { 127 {
129 foundWIAssembly = true; 128 foundWIAssembly = true;
@@ -183,7 +182,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
183 182
184 foreach (var item in list) 183 foreach (var item in list)
185 { 184 {
186 if (!string.IsNullOrEmpty(item)) 185 if (!String.IsNullOrEmpty(item))
187 { 186 {
188 foreach (var splitItem in item.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)) 187 foreach (var splitItem in item.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
189 { 188 {
@@ -216,9 +215,9 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
216 { 215 {
217 var inputName = Path.GetFileNameWithoutExtension(inputFile); 216 var inputName = Path.GetFileNameWithoutExtension(inputFile);
218 var inputExtension = Path.GetExtension(inputFile); 217 var inputExtension = Path.GetExtension(inputFile);
219 if (string.Equals(inputName, resolveName.Name, StringComparison.OrdinalIgnoreCase) && 218 if (String.Equals(inputName, resolveName.Name, StringComparison.OrdinalIgnoreCase) &&
220 (string.Equals(inputExtension, ".dll", StringComparison.OrdinalIgnoreCase) || 219 (String.Equals(inputExtension, ".dll", StringComparison.OrdinalIgnoreCase) ||
221 string.Equals(inputExtension, ".exe", StringComparison.OrdinalIgnoreCase))) 220 String.Equals(inputExtension, ".exe", StringComparison.OrdinalIgnoreCase)))
222 { 221 {
223 assembly = MakeSfxCA.TryLoadDependentAssembly(inputFile); 222 assembly = MakeSfxCA.TryLoadDependentAssembly(inputFile);
224 223
@@ -268,7 +267,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
268 267
269 if (assembly != null) 268 if (assembly != null)
270 { 269 {
271 if (string.Equals(assembly.GetName().ToString(), resolveName.ToString())) 270 if (String.Equals(assembly.GetName().ToString(), resolveName.ToString()))
272 { 271 {
273 log.WriteLine(" Loaded dependent assembly: " + assembly.Location); 272 log.WriteLine(" Loaded dependent assembly: " + assembly.Location);
274 return assembly; 273 return assembly;
@@ -373,7 +372,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
373 var entryPointName = MakeSfxCA.GetEntryPoint(method); 372 var entryPointName = MakeSfxCA.GetEntryPoint(method);
374 if (entryPointName != null) 373 if (entryPointName != null)
375 { 374 {
376 var entryPointPath = string.Format( 375 var entryPointPath = String.Format(
377 "{0}!{1}.{2}", 376 "{0}!{1}.{2}",
378 Path.GetFileNameWithoutExtension(module), 377 Path.GetFileNameWithoutExtension(module),
379 type.FullName, 378 type.FullName,
@@ -421,7 +420,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
421 break; 420 break;
422 } 421 }
423 422
424 if (string.IsNullOrEmpty(entryPointName)) 423 if (String.IsNullOrEmpty(entryPointName))
425 { 424 {
426 entryPointName = method.Name; 425 entryPointName = method.Name;
427 } 426 }
@@ -444,7 +443,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
444 { 443 {
445 for (var count = 0; ; count++) 444 for (var count = 0; ; count++)
446 { 445 {
447 var templateName = string.Format(entryPointFormat, count); 446 var templateName = String.Format(entryPointFormat, count);
448 var templateAsciiBytes = Encoding.ASCII.GetBytes(templateName); 447 var templateAsciiBytes = Encoding.ASCII.GetBytes(templateName);
449 448
450 var nameOffset = FindBytes(fileBytes, templateAsciiBytes); 449 var nameOffset = FindBytes(fileBytes, templateAsciiBytes);
@@ -491,7 +490,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
491 490
492 if (entryPoints.Count > slotCount) 491 if (entryPoints.Count > slotCount)
493 { 492 {
494 throw new ArgumentException(string.Format( 493 throw new ArgumentException(String.Format(
495 "The custom action assembly has {0} entrypoints, which is more than the maximum ({1}). " + 494 "The custom action assembly has {0} entrypoints, which is more than the maximum ({1}). " +
496 "Refactor the custom actions or add more entrypoint slots in SfxCA\\EntryPoints.h.", 495 "Refactor the custom actions or add more entrypoint slots in SfxCA\\EntryPoints.h.",
497 entryPoints.Count, slotCount)); 496 entryPoints.Count, slotCount));
@@ -500,7 +499,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
500 var slotSort = new string[slotCount]; 499 var slotSort = new string[slotCount];
501 for (var i = 0; i < slotCount - entryPoints.Count; i++) 500 for (var i = 0; i < slotCount - entryPoints.Count; i++)
502 { 501 {
503 slotSort[i] = string.Empty; 502 slotSort[i] = String.Empty;
504 } 503 }
505 504
506 entryPoints.Keys.CopyTo(slotSort, slotCount - entryPoints.Count); 505 entryPoints.Keys.CopyTo(slotSort, slotCount - entryPoints.Count);
@@ -508,7 +507,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
508 507
509 for (var i = 0; ; i++) 508 for (var i = 0; ; i++)
510 { 509 {
511 var templateName = string.Format(ENTRYPOINT_FORMAT, i); 510 var templateName = String.Format(ENTRYPOINT_FORMAT, i);
512 var templateAsciiBytes = Encoding.ASCII.GetBytes(templateName); 511 var templateAsciiBytes = Encoding.ASCII.GetBytes(templateName);
513 var templateUniBytes = Encoding.Unicode.GetBytes(templateName); 512 var templateUniBytes = Encoding.Unicode.GetBytes(templateName);
514 513
@@ -526,11 +525,11 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
526 525
527 var entryPointName = slotSort[i]; 526 var entryPointName = slotSort[i];
528 var entryPointPath = entryPointName.Length > 0 ? 527 var entryPointPath = entryPointName.Length > 0 ?
529 entryPoints[entryPointName] : string.Empty; 528 entryPoints[entryPointName] : String.Empty;
530 529
531 if (entryPointName.Length > MAX_ENTRYPOINT_NAME) 530 if (entryPointName.Length > MAX_ENTRYPOINT_NAME)
532 { 531 {
533 throw new ArgumentException(string.Format( 532 throw new ArgumentException(String.Format(
534 "Entry point name exceeds limit of {0} characters: {1}", 533 "Entry point name exceeds limit of {0} characters: {1}",
535 MAX_ENTRYPOINT_NAME, 534 MAX_ENTRYPOINT_NAME,
536 entryPointName)); 535 entryPointName));
@@ -538,7 +537,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
538 537
539 if (entryPointPath.Length > MAX_ENTRYPOINT_PATH) 538 if (entryPointPath.Length > MAX_ENTRYPOINT_PATH)
540 { 539 {
541 throw new ArgumentException(string.Format( 540 throw new ArgumentException(String.Format(
542 "Entry point path exceeds limit of {0} characters: {1}", 541 "Entry point path exceeds limit of {0} characters: {1}",
543 MAX_ENTRYPOINT_PATH, 542 MAX_ENTRYPOINT_PATH,
544 entryPointPath)); 543 entryPointPath));
@@ -570,7 +569,7 @@ namespace WixToolset.Dtf.Tools.MakeSfxCA
570 569
571 if (uiClass.Length > MAX_ENTRYPOINT_PATH) 570 if (uiClass.Length > MAX_ENTRYPOINT_PATH)
572 { 571 {
573 throw new ArgumentException(string.Format( 572 throw new ArgumentException(String.Format(
574 "UI class full name exceeds limit of {0} characters: {1}", 573 "UI class full name exceeds limit of {0} characters: {1}",
575 MAX_ENTRYPOINT_PATH, 574 MAX_ENTRYPOINT_PATH,
576 uiClass)); 575 uiClass));
diff --git a/src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.exe.manifest b/src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.exe.manifest
new file mode 100644
index 00000000..5224db50
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.MakeSfxCA/MakeSfxCA.exe.manifest
@@ -0,0 +1,11 @@
1<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
3 <assemblyIdentity name="WixToolset.Dtf.MakeSfxCA" version="4.0.0.0" processorArchitecture="x86" type="win32"/>
4 <description>WiX Toolset Compiler</description>
5 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
6 <security><requestedPrivileges><requestedExecutionLevel level="asInvoker" uiAccess="false"/></requestedPrivileges></security>
7 </trustInfo>
8 <application xmlns="urn:schemas-microsoft-com:asm.v3">
9 <windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings"><ws2:longPathAware>true</ws2:longPathAware></windowsSettings>
10 </application>
11</assembly>
diff --git a/src/dtf/WixToolset.Dtf.MakeSfxCA/WixToolset.Dtf.MakeSfxCA.csproj b/src/dtf/WixToolset.Dtf.MakeSfxCA/WixToolset.Dtf.MakeSfxCA.csproj
new file mode 100644
index 00000000..e62aaed3
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.MakeSfxCA/WixToolset.Dtf.MakeSfxCA.csproj
@@ -0,0 +1,19 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project Sdk="Microsoft.NET.Sdk">
5 <PropertyGroup>
6 <OutputType>Exe</OutputType>
7 <TargetFrameworks>net472</TargetFrameworks>
8 <IsPackable>false</IsPackable>
9 <DebugType>embedded</DebugType>
10 <AppConfig>app.config</AppConfig>
11 <ApplicationManifest>MakeSfxCA.exe.manifest</ApplicationManifest>
12 </PropertyGroup>
13
14 <ItemGroup>
15 <ProjectReference Include="..\WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj" />
16 <ProjectReference Include="..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj" />
17 <ProjectReference Include="..\WixToolset.Dtf.Resources\WixToolset.Dtf.Resources.csproj" />
18 </ItemGroup>
19</Project>
diff --git a/src/dtf/WixToolset.Dtf.MakeSfxCA/app.config b/src/dtf/WixToolset.Dtf.MakeSfxCA/app.config
new file mode 100644
index 00000000..29bbc006
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.MakeSfxCA/app.config
@@ -0,0 +1,7 @@
1<?xml version="1.0" encoding="utf-8" ?>
2<configuration>
3 <runtime>
4 <loadFromRemoteSources enabled="true"/>
5 <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=false;Switch.System.IO.BlockLongPaths=false" />
6 </runtime>
7</configuration>
diff --git a/src/dtf/WixToolset.Dtf.Resources/ResourceCollection.cs b/src/dtf/WixToolset.Dtf.Resources/ResourceCollection.cs
index b37d5311..8d46b54b 100644
--- a/src/dtf/WixToolset.Dtf.Resources/ResourceCollection.cs
+++ b/src/dtf/WixToolset.Dtf.Resources/ResourceCollection.cs
@@ -18,7 +18,7 @@ namespace WixToolset.Dtf.Resources
18 /// <remarks> 18 /// <remarks>
19 /// To use this class:<list type="number"> 19 /// To use this class:<list type="number">
20 /// <item>Create a new ResourceCollection</item> 20 /// <item>Create a new ResourceCollection</item>
21 /// <item>Locate resources for the collection by calling one of the <see cref="ResourceCollection.Find(string)"/> methods</item> 21 /// <item>Locate resources for the collection by calling one of the <see cref="ResourceCollection.Find(String)"/> methods</item>
22 /// <item>Load data of one or more <see cref="Resource"/>s from a file by calling the <see cref="Load"/> method of the 22 /// <item>Load data of one or more <see cref="Resource"/>s from a file by calling the <see cref="Load"/> method of the
23 /// Resource class, or load them all at once (more efficient) with the <see cref="Load"/> method of the ResourceCollection.</item> 23 /// Resource class, or load them all at once (more efficient) with the <see cref="Load"/> method of the ResourceCollection.</item>
24 /// <item>Read and/or edit data of the individual Resource objects using the methods on that class.</item> 24 /// <item>Read and/or edit data of the individual Resource objects using the methods on that class.</item>
@@ -28,7 +28,7 @@ namespace WixToolset.Dtf.Resources
28 /// </remarks> 28 /// </remarks>
29 public class ResourceCollection : ICollection<Resource> 29 public class ResourceCollection : ICollection<Resource>
30 { 30 {
31 private List<Resource> resources; 31 private readonly List<Resource> resources;
32 32
33 /// <summary> 33 /// <summary>
34 /// Creates a new, empty ResourceCollection. 34 /// Creates a new, empty ResourceCollection.
@@ -48,17 +48,17 @@ namespace WixToolset.Dtf.Resources
48 { 48 {
49 this.Clear(); 49 this.Clear();
50 50
51 IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); 51 var module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE);
52 if (module == IntPtr.Zero) 52 if (module == IntPtr.Zero)
53 { 53 {
54 int err = Marshal.GetLastWin32Error(); 54 var err = Marshal.GetLastWin32Error();
55 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to load resource file. Error code: {0}", err)); 55 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to load resource file. Error code: {0}", err));
56 } 56 }
57 try 57 try
58 { 58 {
59 if (!NativeMethods.EnumResourceTypes(module, new NativeMethods.EnumResTypesProc(this.EnumResTypes), IntPtr.Zero)) 59 if (!NativeMethods.EnumResourceTypes(module, new NativeMethods.EnumResTypesProc(this.EnumResTypes), IntPtr.Zero))
60 { 60 {
61 int err = Marshal.GetLastWin32Error(); 61 var err = Marshal.GetLastWin32Error();
62 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to enumerate resources. Error code: {0}", err)); 62 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to enumerate resources. Error code: {0}", err));
63 } 63 }
64 } 64 }
@@ -79,12 +79,12 @@ namespace WixToolset.Dtf.Resources
79 { 79 {
80 this.Clear(); 80 this.Clear();
81 81
82 IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); 82 var module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE);
83 try 83 try
84 { 84 {
85 if (!NativeMethods.EnumResourceNames(module, (string) type, new NativeMethods.EnumResNamesProc(this.EnumResNames), IntPtr.Zero)) 85 if (!NativeMethods.EnumResourceNames(module, (string) type, new NativeMethods.EnumResNamesProc(this.EnumResNames), IntPtr.Zero))
86 { 86 {
87 int err = Marshal.GetLastWin32Error(); 87 var err = Marshal.GetLastWin32Error();
88 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceNames error. Error code: {0}", err)); 88 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceNames error. Error code: {0}", err));
89 } 89 }
90 } 90 }
@@ -106,12 +106,12 @@ namespace WixToolset.Dtf.Resources
106 { 106 {
107 this.Clear(); 107 this.Clear();
108 108
109 IntPtr module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); 109 var module = NativeMethods.LoadLibraryEx(resFile, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE);
110 try 110 try
111 { 111 {
112 if (!NativeMethods.EnumResourceLanguages(module, (string) type, name, new NativeMethods.EnumResLangsProc(this.EnumResLangs), IntPtr.Zero)) 112 if (!NativeMethods.EnumResourceLanguages(module, (string) type, name, new NativeMethods.EnumResLangsProc(this.EnumResLangs), IntPtr.Zero))
113 { 113 {
114 int err = Marshal.GetLastWin32Error(); 114 var err = Marshal.GetLastWin32Error();
115 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceLanguages error. Error code: {0}", err)); 115 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceLanguages error. Error code: {0}", err));
116 } 116 }
117 } 117 }
@@ -123,9 +123,9 @@ namespace WixToolset.Dtf.Resources
123 123
124 private bool EnumResTypes(IntPtr module, IntPtr type, IntPtr param) 124 private bool EnumResTypes(IntPtr module, IntPtr type, IntPtr param)
125 { 125 {
126 if (!NativeMethods.EnumResourceNames(module, type, new NativeMethods.EnumResNamesProc(EnumResNames), IntPtr.Zero)) 126 if (!NativeMethods.EnumResourceNames(module, type, new NativeMethods.EnumResNamesProc(this.EnumResNames), IntPtr.Zero))
127 { 127 {
128 int err = Marshal.GetLastWin32Error(); 128 var err = Marshal.GetLastWin32Error();
129 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceNames error! Error code: {0}", err)); 129 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceNames error! Error code: {0}", err));
130 } 130 }
131 return true; 131 return true;
@@ -133,9 +133,9 @@ namespace WixToolset.Dtf.Resources
133 133
134 private bool EnumResNames(IntPtr module, IntPtr type, IntPtr name, IntPtr param) 134 private bool EnumResNames(IntPtr module, IntPtr type, IntPtr name, IntPtr param)
135 { 135 {
136 if (!NativeMethods.EnumResourceLanguages(module, type, name, new NativeMethods.EnumResLangsProc(EnumResLangs), IntPtr.Zero)) 136 if (!NativeMethods.EnumResourceLanguages(module, type, name, new NativeMethods.EnumResLangsProc(this.EnumResLangs), IntPtr.Zero))
137 { 137 {
138 int err = Marshal.GetLastWin32Error(); 138 var err = Marshal.GetLastWin32Error();
139 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceLanguages error. Error code: {0}", err)); 139 throw new IOException(String.Format(CultureInfo.InvariantCulture, "EnumResourceLanguages error. Error code: {0}", err));
140 } 140 }
141 return true; 141 return true;
@@ -179,10 +179,10 @@ namespace WixToolset.Dtf.Resources
179 /// <param name="file">The file from which resources are loaded.</param> 179 /// <param name="file">The file from which resources are loaded.</param>
180 public void Load(string file) 180 public void Load(string file)
181 { 181 {
182 IntPtr module = NativeMethods.LoadLibraryEx(file, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE); 182 var module = NativeMethods.LoadLibraryEx(file, IntPtr.Zero, NativeMethods.LOAD_LIBRARY_AS_DATAFILE);
183 try 183 try
184 { 184 {
185 foreach (Resource res in this) 185 foreach (var res in this)
186 { 186 {
187 res.Load(module); 187 res.Load(module);
188 } 188 }
@@ -199,17 +199,17 @@ namespace WixToolset.Dtf.Resources
199 /// <param name="file">The file to which resources are saved.</param> 199 /// <param name="file">The file to which resources are saved.</param>
200 public void Save(string file) 200 public void Save(string file)
201 { 201 {
202 IntPtr updateHandle = IntPtr.Zero; 202 var updateHandle = IntPtr.Zero;
203 try 203 try
204 { 204 {
205 updateHandle = NativeMethods.BeginUpdateResource(file, false); 205 updateHandle = NativeMethods.BeginUpdateResource(file, false);
206 foreach (Resource res in this) 206 foreach (var res in this)
207 { 207 {
208 res.Save(updateHandle); 208 res.Save(updateHandle);
209 } 209 }
210 if (!NativeMethods.EndUpdateResource(updateHandle, false)) 210 if (!NativeMethods.EndUpdateResource(updateHandle, false))
211 { 211 {
212 int err = Marshal.GetLastWin32Error(); 212 var err = Marshal.GetLastWin32Error();
213 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to save resource. Error {0}", err)); 213 throw new IOException(String.Format(CultureInfo.InvariantCulture, "Failed to save resource. Error {0}", err));
214 } 214 }
215 updateHandle = IntPtr.Zero; 215 updateHandle = IntPtr.Zero;
diff --git a/src/dtf/dtf.cmd b/src/dtf/dtf.cmd
index dbc67c63..6b55ecfe 100644
--- a/src/dtf/dtf.cmd
+++ b/src/dtf/dtf.cmd
@@ -8,6 +8,8 @@
8 8
9@echo Building dtf %_C% 9@echo Building dtf %_C%
10 10
11msbuild -Restore SfxCA\sfxca_t.proj -p:Configuration=%_C% -nologo -m -warnaserror -bl:..\..\build\logs\dtf_sfxca.binlog || exit /b
12
11msbuild -Restore -t:Pack dtf.sln -p:Configuration=%_C% -nologo -m -warnaserror -bl:..\..\build\logs\dtf_build.binlog || exit /b 13msbuild -Restore -t:Pack dtf.sln -p:Configuration=%_C% -nologo -m -warnaserror -bl:..\..\build\logs\dtf_build.binlog || exit /b
12 14
13@popd 15@popd
diff --git a/src/dtf/dtf.sln b/src/dtf/dtf.sln
index fbd9452c..36592dcf 100644
--- a/src/dtf/dtf.sln
+++ b/src/dtf/dtf.sln
@@ -1,33 +1,39 @@
1 1
2Microsoft Visual Studio Solution File, Format Version 12.00 2Microsoft Visual Studio Solution File, Format Version 12.00
3# Visual Studio 15 3# Visual Studio Version 17
4VisualStudioVersion = 15.0.26730.8 4VisualStudioVersion = 17.1.32228.430
5MinimumVisualStudioVersion = 15.0.26124.0 5MinimumVisualStudioVersion = 15.0.26124.0
6Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.Compression", "WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj", "{2D62850C-9F81-4BE9-BDF3-9379389C8F7B}" 6Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.Compression", "WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj", "{2D62850C-9F81-4BE9-BDF3-9379389C8F7B}"
7EndProject 7EndProject
8Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.Compression.Cab", "WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj", "{15895FD1-DD68-407B-8717-08F6DD14F02C}" 8Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.Compression.Cab", "WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj", "{15895FD1-DD68-407B-8717-08F6DD14F02C}"
9EndProject 9EndProject
10Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.Compression.Zip", "WixToolset.Dtf.Compression.Zip\WixToolset.Dtf.Compression.Zip.csproj", "{261F2857-B521-42A4-A3E0-B5165F225E50}" 10Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.Compression.Zip", "WixToolset.Dtf.Compression.Zip\WixToolset.Dtf.Compression.Zip.csproj", "{261F2857-B521-42A4-A3E0-B5165F225E50}"
11EndProject 11EndProject
12Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.Resources", "WixToolset.Dtf.Resources\WixToolset.Dtf.Resources.csproj", "{44931ECB-8D6F-4C12-A872-64E261B6A98E}" 12Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.Resources", "WixToolset.Dtf.Resources\WixToolset.Dtf.Resources.csproj", "{44931ECB-8D6F-4C12-A872-64E261B6A98E}"
13EndProject 13EndProject
14Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.WindowsInstaller", "WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj", "{24121677-0ED0-41B5-833F-1B9A18E87BF4}" 14Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.WindowsInstaller", "WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj", "{24121677-0ED0-41B5-833F-1B9A18E87BF4}"
15EndProject 15EndProject
16Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.WindowsInstaller.Linq", "WixToolset.Dtf.WindowsInstaller.Linq\WixToolset.Dtf.WindowsInstaller.Linq.csproj", "{CD7A37D8-9D8C-41BD-B78F-DB5E0C299D2E}" 16Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.WindowsInstaller.Linq", "WixToolset.Dtf.WindowsInstaller.Linq\WixToolset.Dtf.WindowsInstaller.Linq.csproj", "{CD7A37D8-9D8C-41BD-B78F-DB5E0C299D2E}"
17EndProject 17EndProject
18Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolset.Dtf.WindowsInstaller.Package", "WixToolset.Dtf.WindowsInstaller.Package\WixToolset.Dtf.WindowsInstaller.Package.csproj", "{1A9940A7-3E29-4428-B753-C4CC66058F1A}" 18Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.WindowsInstaller.Package", "WixToolset.Dtf.WindowsInstaller.Package\WixToolset.Dtf.WindowsInstaller.Package.csproj", "{1A9940A7-3E29-4428-B753-C4CC66058F1A}"
19EndProject 19EndProject
20Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression", "WixToolsetTests.Dtf.Compression\WixToolsetTests.Dtf.Compression.csproj", "{F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}" 20Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression", "test\WixToolsetTests.Dtf.Compression\WixToolsetTests.Dtf.Compression.csproj", "{F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}"
21EndProject 21EndProject
22Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression.Cab", "WixToolsetTests.Dtf.Compression.Cab\WixToolsetTests.Dtf.Compression.Cab.csproj", "{4544158C-2D63-4146-85FF-62169280144E}" 22Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression.Cab", "test\WixToolsetTests.Dtf.Compression.Cab\WixToolsetTests.Dtf.Compression.Cab.csproj", "{4544158C-2D63-4146-85FF-62169280144E}"
23EndProject 23EndProject
24Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression.Zip", "WixToolsetTests.Dtf.Compression.Zip\WixToolsetTests.Dtf.Compression.Zip.csproj", "{328799BB-7B03-4B28-8180-4132211FD07D}" 24Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.Compression.Zip", "test\WixToolsetTests.Dtf.Compression.Zip\WixToolsetTests.Dtf.Compression.Zip.csproj", "{328799BB-7B03-4B28-8180-4132211FD07D}"
25EndProject 25EndProject
26Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller", "WixToolsetTests.Dtf.WindowsInstaller\WixToolsetTests.Dtf.WindowsInstaller.csproj", "{16F5202F-9276-4166-975C-C9654BAF8012}" 26Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller", "test\WixToolsetTests.Dtf.WindowsInstaller\WixToolsetTests.Dtf.WindowsInstaller.csproj", "{16F5202F-9276-4166-975C-C9654BAF8012}"
27EndProject 27EndProject
28Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller.CustomActions", "WixToolsetTests.Dtf.WindowsInstaller.CustomActions\WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj", "{137D376B-989F-4FEA-9A67-01D8D38CA0DE}" 28Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller.CustomActions", "test\WixToolsetTests.Dtf.WindowsInstaller.CustomActions\WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj", "{137D376B-989F-4FEA-9A67-01D8D38CA0DE}"
29EndProject 29EndProject
30Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller.Linq", "WixToolsetTests.Dtf.WindowsInstaller.Linq\WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj", "{4F55F9B8-D8B6-41EB-8796-221B4CD98324}" 30Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixToolsetTests.Dtf.WindowsInstaller.Linq", "test\WixToolsetTests.Dtf.WindowsInstaller.Linq\WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj", "{4F55F9B8-D8B6-41EB-8796-221B4CD98324}"
31EndProject
32Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{222DA0A6-5E28-4D7A-A227-B818B0C55BAB}"
33EndProject
34Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.MakeSfxCA", "WixToolset.Dtf.MakeSfxCA\WixToolset.Dtf.MakeSfxCA.csproj", "{F8CA8E72-08BF-4A8A-AD32-C638616B72E2}"
35EndProject
36Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Dtf.CustomAction", "WixToolset.Dtf.CustomAction\WixToolset.Dtf.CustomAction.csproj", "{D6C0D94C-80A5-495C-B573-C7440A8594F5}"
31EndProject 37EndProject
32Global 38Global
33 GlobalSection(SolutionConfigurationPlatforms) = preSolution 39 GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -129,8 +135,8 @@ Global
129 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x64.Build.0 = Debug|Any CPU 135 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x64.Build.0 = Debug|Any CPU
130 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x86.ActiveCfg = Debug|Any CPU 136 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x86.ActiveCfg = Debug|Any CPU
131 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x86.Build.0 = Debug|Any CPU 137 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Debug|x86.Build.0 = Debug|Any CPU
132 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|Any CPU.ActiveCfg = Release|Any CPU 138 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|Any CPU.ActiveCfg = Debug|Any CPU
133 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|Any CPU.Build.0 = Release|Any CPU 139 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|Any CPU.Build.0 = Debug|Any CPU
134 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x64.ActiveCfg = Release|Any CPU 140 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x64.ActiveCfg = Release|Any CPU
135 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x64.Build.0 = Release|Any CPU 141 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x64.Build.0 = Release|Any CPU
136 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x86.ActiveCfg = Release|Any CPU 142 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}.Release|x86.ActiveCfg = Release|Any CPU
@@ -141,8 +147,8 @@ Global
141 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x64.Build.0 = Debug|Any CPU 147 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x64.Build.0 = Debug|Any CPU
142 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x86.ActiveCfg = Debug|Any CPU 148 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x86.ActiveCfg = Debug|Any CPU
143 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x86.Build.0 = Debug|Any CPU 149 {4544158C-2D63-4146-85FF-62169280144E}.Debug|x86.Build.0 = Debug|Any CPU
144 {4544158C-2D63-4146-85FF-62169280144E}.Release|Any CPU.ActiveCfg = Release|Any CPU 150 {4544158C-2D63-4146-85FF-62169280144E}.Release|Any CPU.ActiveCfg = Debug|Any CPU
145 {4544158C-2D63-4146-85FF-62169280144E}.Release|Any CPU.Build.0 = Release|Any CPU 151 {4544158C-2D63-4146-85FF-62169280144E}.Release|Any CPU.Build.0 = Debug|Any CPU
146 {4544158C-2D63-4146-85FF-62169280144E}.Release|x64.ActiveCfg = Release|Any CPU 152 {4544158C-2D63-4146-85FF-62169280144E}.Release|x64.ActiveCfg = Release|Any CPU
147 {4544158C-2D63-4146-85FF-62169280144E}.Release|x64.Build.0 = Release|Any CPU 153 {4544158C-2D63-4146-85FF-62169280144E}.Release|x64.Build.0 = Release|Any CPU
148 {4544158C-2D63-4146-85FF-62169280144E}.Release|x86.ActiveCfg = Release|Any CPU 154 {4544158C-2D63-4146-85FF-62169280144E}.Release|x86.ActiveCfg = Release|Any CPU
@@ -153,8 +159,8 @@ Global
153 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x64.Build.0 = Debug|Any CPU 159 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x64.Build.0 = Debug|Any CPU
154 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x86.ActiveCfg = Debug|Any CPU 160 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x86.ActiveCfg = Debug|Any CPU
155 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x86.Build.0 = Debug|Any CPU 161 {328799BB-7B03-4B28-8180-4132211FD07D}.Debug|x86.Build.0 = Debug|Any CPU
156 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|Any CPU.ActiveCfg = Release|Any CPU 162 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|Any CPU.ActiveCfg = Debug|Any CPU
157 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|Any CPU.Build.0 = Release|Any CPU 163 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|Any CPU.Build.0 = Debug|Any CPU
158 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x64.ActiveCfg = Release|Any CPU 164 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x64.ActiveCfg = Release|Any CPU
159 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x64.Build.0 = Release|Any CPU 165 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x64.Build.0 = Release|Any CPU
160 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x86.ActiveCfg = Release|Any CPU 166 {328799BB-7B03-4B28-8180-4132211FD07D}.Release|x86.ActiveCfg = Release|Any CPU
@@ -165,8 +171,8 @@ Global
165 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x64.Build.0 = Debug|Any CPU 171 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x64.Build.0 = Debug|Any CPU
166 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x86.ActiveCfg = Debug|Any CPU 172 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x86.ActiveCfg = Debug|Any CPU
167 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x86.Build.0 = Debug|Any CPU 173 {16F5202F-9276-4166-975C-C9654BAF8012}.Debug|x86.Build.0 = Debug|Any CPU
168 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|Any CPU.ActiveCfg = Release|Any CPU 174 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|Any CPU.ActiveCfg = Debug|Any CPU
169 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|Any CPU.Build.0 = Release|Any CPU 175 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|Any CPU.Build.0 = Debug|Any CPU
170 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x64.ActiveCfg = Release|Any CPU 176 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x64.ActiveCfg = Release|Any CPU
171 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x64.Build.0 = Release|Any CPU 177 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x64.Build.0 = Release|Any CPU
172 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x86.ActiveCfg = Release|Any CPU 178 {16F5202F-9276-4166-975C-C9654BAF8012}.Release|x86.ActiveCfg = Release|Any CPU
@@ -177,8 +183,8 @@ Global
177 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x64.Build.0 = Debug|Any CPU 183 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x64.Build.0 = Debug|Any CPU
178 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x86.ActiveCfg = Debug|Any CPU 184 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x86.ActiveCfg = Debug|Any CPU
179 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x86.Build.0 = Debug|Any CPU 185 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Debug|x86.Build.0 = Debug|Any CPU
180 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|Any CPU.ActiveCfg = Release|Any CPU 186 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|Any CPU.ActiveCfg = Debug|Any CPU
181 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|Any CPU.Build.0 = Release|Any CPU 187 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|Any CPU.Build.0 = Debug|Any CPU
182 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x64.ActiveCfg = Release|Any CPU 188 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x64.ActiveCfg = Release|Any CPU
183 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x64.Build.0 = Release|Any CPU 189 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x64.Build.0 = Release|Any CPU
184 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x86.ActiveCfg = Release|Any CPU 190 {137D376B-989F-4FEA-9A67-01D8D38CA0DE}.Release|x86.ActiveCfg = Release|Any CPU
@@ -189,29 +195,47 @@ Global
189 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x64.Build.0 = Debug|Any CPU 195 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x64.Build.0 = Debug|Any CPU
190 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x86.ActiveCfg = Debug|Any CPU 196 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x86.ActiveCfg = Debug|Any CPU
191 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x86.Build.0 = Debug|Any CPU 197 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Debug|x86.Build.0 = Debug|Any CPU
192 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|Any CPU.ActiveCfg = Release|Any CPU 198 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|Any CPU.ActiveCfg = Debug|Any CPU
193 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|Any CPU.Build.0 = Release|Any CPU 199 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|Any CPU.Build.0 = Debug|Any CPU
194 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x64.ActiveCfg = Release|Any CPU 200 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x64.ActiveCfg = Release|Any CPU
195 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x64.Build.0 = Release|Any CPU 201 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x64.Build.0 = Release|Any CPU
196 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x86.ActiveCfg = Release|Any CPU 202 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x86.ActiveCfg = Release|Any CPU
197 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x86.Build.0 = Release|Any CPU 203 {4F55F9B8-D8B6-41EB-8796-221B4CD98324}.Release|x86.Build.0 = Release|Any CPU
198 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 204 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
199 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|Any CPU.Build.0 = Debug|Any CPU 205 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|Any CPU.Build.0 = Debug|Any CPU
200 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|x64.ActiveCfg = Debug|Any CPU 206 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|x64.ActiveCfg = Debug|Any CPU
201 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|x64.Build.0 = Debug|Any CPU 207 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|x64.Build.0 = Debug|Any CPU
202 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|x86.ActiveCfg = Debug|Any CPU 208 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|x86.ActiveCfg = Debug|Any CPU
203 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Debug|x86.Build.0 = Debug|Any CPU 209 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Debug|x86.Build.0 = Debug|Any CPU
204 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|Any CPU.ActiveCfg = Release|Any CPU 210 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|Any CPU.ActiveCfg = Release|Any CPU
205 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|Any CPU.Build.0 = Release|Any CPU 211 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|Any CPU.Build.0 = Release|Any CPU
206 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|x64.ActiveCfg = Release|Any CPU 212 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|x64.ActiveCfg = Release|Any CPU
207 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|x64.Build.0 = Release|Any CPU 213 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|x64.Build.0 = Release|Any CPU
208 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|x86.ActiveCfg = Release|Any CPU 214 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|x86.ActiveCfg = Release|Any CPU
209 {E7A00377-A0B5-400F-8337-C0814AAC7153}.Release|x86.Build.0 = Release|Any CPU 215 {F8CA8E72-08BF-4A8A-AD32-C638616B72E2}.Release|x86.Build.0 = Release|Any CPU
216 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
217 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
218 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|x64.ActiveCfg = Debug|Any CPU
219 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|x64.Build.0 = Debug|Any CPU
220 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|x86.ActiveCfg = Debug|Any CPU
221 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Debug|x86.Build.0 = Debug|Any CPU
222 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
223 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|Any CPU.Build.0 = Release|Any CPU
224 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|x64.ActiveCfg = Release|Any CPU
225 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|x64.Build.0 = Release|Any CPU
226 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|x86.ActiveCfg = Release|Any CPU
227 {D6C0D94C-80A5-495C-B573-C7440A8594F5}.Release|x86.Build.0 = Release|Any CPU
210 EndGlobalSection 228 EndGlobalSection
211 GlobalSection(SolutionProperties) = preSolution 229 GlobalSection(SolutionProperties) = preSolution
212 HideSolutionNode = FALSE 230 HideSolutionNode = FALSE
213 EndGlobalSection 231 EndGlobalSection
214 GlobalSection(NestedProjects) = preSolution 232 GlobalSection(NestedProjects) = preSolution
233 {F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
234 {4544158C-2D63-4146-85FF-62169280144E} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
235 {328799BB-7B03-4B28-8180-4132211FD07D} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
236 {16F5202F-9276-4166-975C-C9654BAF8012} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
237 {137D376B-989F-4FEA-9A67-01D8D38CA0DE} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
238 {4F55F9B8-D8B6-41EB-8796-221B4CD98324} = {222DA0A6-5E28-4D7A-A227-B818B0C55BAB}
215 EndGlobalSection 239 EndGlobalSection
216 GlobalSection(ExtensibilityGlobals) = postSolution 240 GlobalSection(ExtensibilityGlobals) = postSolution
217 SolutionGuid = {BB57C98D-C0C2-4805-AED3-C19B47759DBD} 241 SolutionGuid = {BB57C98D-C0C2-4805-AED3-C19B47759DBD}
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs b/src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs
index 981ecc69..981ecc69 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/CabTest.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj b/src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj
index e751d405..636cedc6 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression.Cab/WixToolsetTests.Dtf.Compression.Cab.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{4544158C-2D63-4146-85FF-62169280144E}</ProjectGuid> 5 <ProjectGuid>{4544158C-2D63-4146-85FF-62169280144E}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
@@ -24,11 +24,11 @@
24 </ItemGroup> 24 </ItemGroup>
25 25
26 <ItemGroup> 26 <ItemGroup>
27 <ProjectReference Include="..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj"> 27 <ProjectReference Include="..\..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj">
28 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project> 28 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project>
29 <Name>WixToolset.Dtf.Compression</Name> 29 <Name>WixToolset.Dtf.Compression</Name>
30 </ProjectReference> 30 </ProjectReference>
31 <ProjectReference Include="..\WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj"> 31 <ProjectReference Include="..\..\WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj">
32 <Project>{E56C0ED3-FA2F-4CA9-A1C0-2E796BB0BF80}</Project> 32 <Project>{E56C0ED3-FA2F-4CA9-A1C0-2E796BB0BF80}</Project>
33 <Name>WixToolset.Dtf.Compression.Cab</Name> 33 <Name>WixToolset.Dtf.Compression.Cab</Name>
34 </ProjectReference> 34 </ProjectReference>
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj b/src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj
index 6ee102ae..d46776d8 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/WixToolsetTests.Dtf.Compression.Zip.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{328799BB-7B03-4B28-8180-4132211FD07D}</ProjectGuid> 5 <ProjectGuid>{328799BB-7B03-4B28-8180-4132211FD07D}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
@@ -22,11 +22,11 @@
22 </ItemGroup> 22 </ItemGroup>
23 23
24 <ItemGroup> 24 <ItemGroup>
25 <ProjectReference Include="..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj"> 25 <ProjectReference Include="..\..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj">
26 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project> 26 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project>
27 <Name>WixToolset.Dtf.Compression</Name> 27 <Name>WixToolset.Dtf.Compression</Name>
28 </ProjectReference> 28 </ProjectReference>
29 <ProjectReference Include="..\WixToolset.Dtf.Compression.Zip\WixToolset.Dtf.Compression.Zip.csproj"> 29 <ProjectReference Include="..\..\WixToolset.Dtf.Compression.Zip\WixToolset.Dtf.Compression.Zip.csproj">
30 <Project>{E4C60A57-8AFE-4FF3-9058-ACAC6A069533}</Project> 30 <Project>{E4C60A57-8AFE-4FF3-9058-ACAC6A069533}</Project>
31 <Name>WixToolset.Dtf.Compression.Zip</Name> 31 <Name>WixToolset.Dtf.Compression.Zip</Name>
32 </ProjectReference> 32 </ProjectReference>
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs b/src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs
index b264ad5b..b264ad5b 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression.Zip/ZipTest.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs b/src/dtf/test/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs
index e7a5373d..e7a5373d 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression/CompressionTestUtil.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs b/src/dtf/test/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs
index 2531f3bc..2531f3bc 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression/MisbehavingStreamContext.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs b/src/dtf/test/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs
index 98354d97..98354d97 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression/OptionStreamContext.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj b/src/dtf/test/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj
index 194628a7..628d36c5 100644
--- a/src/dtf/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.Compression/WixToolsetTests.Dtf.Compression.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}</ProjectGuid> 5 <ProjectGuid>{F045FFC1-05F9-4EA2-9F03-E1CBDB7BC4F9}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
@@ -25,7 +25,7 @@
25 </ItemGroup> 25 </ItemGroup>
26 26
27 <ItemGroup> 27 <ItemGroup>
28 <ProjectReference Include="..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj"> 28 <ProjectReference Include="..\..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj">
29 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project> 29 <Project>{45D81DAB-0559-4836-8106-CE9987FD4AB5}</Project>
30 <Name>WixToolset.Dtf.Compression</Name> 30 <Name>WixToolset.Dtf.Compression</Name>
31 </ProjectReference> 31 </ProjectReference>
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs
index bf843024..bf843024 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/CustomActionTest.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj
index 27e0b499..a2f45fde 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.CustomActions/WixToolsetTests.Dtf.WindowsInstaller.CustomActions.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{137D376B-989F-4FEA-9A67-01D8D38CA0DE}</ProjectGuid> 5 <ProjectGuid>{137D376B-989F-4FEA-9A67-01D8D38CA0DE}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs
index 7776a1c3..7776a1c3 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/LinqTest.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj
index a59e64d4..c34494b7 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller.Linq/WixToolsetTests.Dtf.WindowsInstaller.Linq.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{4F55F9B8-D8B6-41EB-8796-221B4CD98324}</ProjectGuid> 5 <ProjectGuid>{4F55F9B8-D8B6-41EB-8796-221B4CD98324}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
@@ -23,11 +23,11 @@
23 </ItemGroup> 23 </ItemGroup>
24 24
25 <ItemGroup> 25 <ItemGroup>
26 <ProjectReference Include="..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj"> 26 <ProjectReference Include="..\..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj">
27 <Project>{85225597-5121-4361-8332-4E3246D5BBF5}</Project> 27 <Project>{85225597-5121-4361-8332-4E3246D5BBF5}</Project>
28 <Name>WixToolset.Dtf.WindowsInstaller</Name> 28 <Name>WixToolset.Dtf.WindowsInstaller</Name>
29 </ProjectReference> 29 </ProjectReference>
30 <ProjectReference Include="..\WixToolset.Dtf.WindowsInstaller.Linq\WixToolset.Dtf.WindowsInstaller.Linq.csproj"> 30 <ProjectReference Include="..\..\WixToolset.Dtf.WindowsInstaller.Linq\WixToolset.Dtf.WindowsInstaller.Linq.csproj">
31 <Project>{7E66313B-C6D4-4729-8422-4D1474E0E6F7}</Project> 31 <Project>{7E66313B-C6D4-4729-8422-4D1474E0E6F7}</Project>
32 <Name>WixToolset.Dtf.WindowsInstaller.Linq</Name> 32 <Name>WixToolset.Dtf.WindowsInstaller.Linq</Name>
33 </ProjectReference> 33 </ProjectReference>
@@ -39,4 +39,4 @@
39 39
40 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> 40 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
41 <Target Name="Pack" DependsOnTargets="Build" /> 41 <Target Name="Pack" DependsOnTargets="Build" />
42</Project> 42</Project> \ No newline at end of file
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs
index b0fc00a8..b0fc00a8 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/EmbeddedExternalUI.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs
index 26c172c9..26c172c9 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/Schema.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs
index f994dfef..f994dfef 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTest.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs
index 3bdf5acd..3bdf5acd 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerTransactions.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs
index 644f1988..644f1988 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WindowsInstallerUtils.cs
diff --git a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj
index 0d2a50fb..eaa273ed 100644
--- a/src/dtf/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj
+++ b/src/dtf/test/WixToolsetTests.Dtf.WindowsInstaller/WixToolsetTests.Dtf.WindowsInstaller.csproj
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="Current">
4 <PropertyGroup> 4 <PropertyGroup>
5 <ProjectGuid>{16F5202F-9276-4166-975C-C9654BAF8012}</ProjectGuid> 5 <ProjectGuid>{16F5202F-9276-4166-975C-C9654BAF8012}</ProjectGuid>
6 <OutputType>Library</OutputType> 6 <OutputType>Library</OutputType>
@@ -28,7 +28,7 @@
28 </ItemGroup> 28 </ItemGroup>
29 29
30 <ItemGroup> 30 <ItemGroup>
31 <ProjectReference Include="..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj"> 31 <ProjectReference Include="..\..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj">
32 <Project>{85225597-5121-4361-8332-4E3246D5BBF5}</Project> 32 <Project>{85225597-5121-4361-8332-4E3246D5BBF5}</Project>
33 <Name>WixToolset.Dtf.WindowsInstaller</Name> 33 <Name>WixToolset.Dtf.WindowsInstaller</Name>
34 </ProjectReference> 34 </ProjectReference>
diff --git a/src/internal/SetBuildNumber/Directory.Packages.props.pp b/src/internal/SetBuildNumber/Directory.Packages.props.pp
index 09e14d52..6737cc38 100644
--- a/src/internal/SetBuildNumber/Directory.Packages.props.pp
+++ b/src/internal/SetBuildNumber/Directory.Packages.props.pp
@@ -2,6 +2,7 @@
2 <ItemGroup> 2 <ItemGroup>
3 <PackageVersion Include="WixToolset.Dtf.Compression" Version="{packageversion}" /> 3 <PackageVersion Include="WixToolset.Dtf.Compression" Version="{packageversion}" />
4 <PackageVersion Include="WixToolset.Dtf.Compression.Cab" Version="{packageversion}" /> 4 <PackageVersion Include="WixToolset.Dtf.Compression.Cab" Version="{packageversion}" />
5 <PackageVersion Include="WixToolset.Dtf.CustomAction" Version="{packageversion}" />
5 <PackageVersion Include="WixToolset.Dtf.Resources" Version="{packageversion}" /> 6 <PackageVersion Include="WixToolset.Dtf.Resources" Version="{packageversion}" />
6 <PackageVersion Include="WixToolset.Dtf.WindowsInstaller" Version="{packageversion}" /> 7 <PackageVersion Include="WixToolset.Dtf.WindowsInstaller" Version="{packageversion}" />
7 8
diff --git a/src/internal/WixBuildFinalize/WixBuildFinalize.proj b/src/internal/WixBuildFinalize/WixBuildFinalize.proj
index 1e0a98d1..7453e324 100644
--- a/src/internal/WixBuildFinalize/WixBuildFinalize.proj
+++ b/src/internal/WixBuildFinalize/WixBuildFinalize.proj
@@ -3,7 +3,7 @@
3 3
4<Project Sdk="Microsoft.Build.NoTargets"> 4<Project Sdk="Microsoft.Build.NoTargets">
5 <PropertyGroup> 5 <PropertyGroup>
6 <TargetFramework>net46</TargetFramework> 6 <TargetFramework>net472</TargetFramework>
7 </PropertyGroup> 7 </PropertyGroup>
8 8
9 <ItemGroup> 9 <ItemGroup>
diff --git a/src/samples/Dtf/EmbeddedUI/AssemblyInfo.cs b/src/samples/Dtf/EmbeddedUI/AssemblyInfo.cs
deleted file mode 100644
index 7a2fa039..00000000
--- a/src/samples/Dtf/EmbeddedUI/AssemblyInfo.cs
+++ /dev/null
@@ -1,5 +0,0 @@
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
3using System.Reflection;
4
5[assembly: AssemblyDescription("Sample managed embedded external UI")]
diff --git a/src/samples/Dtf/ManagedCA/AssemblyInfo.cs b/src/samples/Dtf/ManagedCA/AssemblyInfo.cs
deleted file mode 100644
index 75be36b2..00000000
--- a/src/samples/Dtf/ManagedCA/AssemblyInfo.cs
+++ /dev/null
@@ -1,5 +0,0 @@
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
3using System.Reflection;
4
5[assembly: AssemblyDescription("Sample managed custom actions")]
diff --git a/src/samples/Dtf/ManagedCA/ManagedCA.csproj b/src/samples/Dtf/ManagedCA/ManagedCA.csproj
deleted file mode 100644
index 7fb32ad4..00000000
--- a/src/samples/Dtf/ManagedCA/ManagedCA.csproj
+++ /dev/null
@@ -1,33 +0,0 @@
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 ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3 <PropertyGroup>
4 <ProjectGuid>{DB9E5F02-8241-440A-9B60-980EB5B42B13}</ProjectGuid>
5 <OutputType>Library</OutputType>
6 <RootNamespace>WixToolset.Dtf.Samples.ManagedCA</RootNamespace>
7 <AssemblyName>WixToolset.Dtf.Samples.ManagedCA</AssemblyName>
8 <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
9 <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
10 </PropertyGroup>
11 <ItemGroup>
12 <Compile Include="AssemblyInfo.cs" />
13 <Compile Include="SampleCAs.cs" />
14 </ItemGroup>
15 <ItemGroup>
16 <Reference Include="System" />
17 </ItemGroup>
18 <ItemGroup>
19 <ProjectReference Include="..\..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj">
20 <Project>{24121677-0ed0-41b5-833f-1b9a18e87bf4}</Project>
21 <Name>WixToolset.Dtf.WindowsInstaller</Name>
22 </ProjectReference>
23 </ItemGroup>
24
25 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
26
27<!--
28 <PropertyGroup>
29 <PostBuildEvent>"$(TargetDir)..\x86\MakeSfxCA.exe" "$(TargetPath)" "$(TargetDir)SfxCA.dll" "$(IntermediateOutputPath)$(TargetFileName)" WixToolset.Dtf.WindowsInstaller.dll="$(TargetDir)WixToolset.Dtf.WindowsInstaller.dll" testsub\SampleCAs.cs="$(ProjectDir)\SampleCAs.cs"</PostBuildEvent>
30 </PropertyGroup>
31-->
32
33</Project>
diff --git a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.csproj b/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.csproj
deleted file mode 100644
index 25b2cdb8..00000000
--- a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.csproj
+++ /dev/null
@@ -1,27 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project Sdk="Microsoft.NET.Sdk">
5 <PropertyGroup>
6 <TargetFrameworks>netcoreapp3.1;net472</TargetFrameworks>
7 <OutputType>Exe</OutputType>
8 <RootNamespace>WixToolset.Dtf.Tools.MakeSfxCA</RootNamespace>
9 <AssemblyName>MakeSfxCA</AssemblyName>
10 <DebugType>embedded</DebugType>
11 <AppConfig>app.config</AppConfig>
12 <ApplicationManifest>MakeSfxCA.exe.manifest</ApplicationManifest>
13 <RollForward>Major</RollForward>
14 <RuntimeIdentifier>win-x86</RuntimeIdentifier>
15 </PropertyGroup>
16
17 <ItemGroup>
18 <ProjectReference Include="..\..\WixToolset.Dtf.Compression.Cab\WixToolset.Dtf.Compression.Cab.csproj" />
19 <ProjectReference Include="..\..\WixToolset.Dtf.Compression\WixToolset.Dtf.Compression.csproj" />
20 <ProjectReference Include="..\..\WixToolset.Dtf.Resources\WixToolset.Dtf.Resources.csproj" />
21 </ItemGroup>
22
23 <ItemGroup>
24 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
25 <PackageReference Include="GitInfo" Version="2.1.2" PrivateAssets="All" />
26 </ItemGroup>
27</Project>
diff --git a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.exe.manifest b/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.exe.manifest
deleted file mode 100644
index 49b074e0..00000000
--- a/src/samples/Dtf/Tools/MakeSfxCA/MakeSfxCA.exe.manifest
+++ /dev/null
@@ -1,20 +0,0 @@
1<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
6 <assemblyIdentity name="WixToolset.Dtf.Tools.MakeSfxCA" version="4.0.0.0" processorArchitecture="x86" type="win32"/>
7 <description>WiX Toolset Compiler</description>
8 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
9 <security>
10 <requestedPrivileges>
11 <requestedExecutionLevel level="asInvoker" uiAccess="false"/>
12 </requestedPrivileges>
13 </security>
14 </trustInfo>
15 <application xmlns="urn:schemas-microsoft-com:asm.v3">
16 <windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
17 <ws2:longPathAware>true</ws2:longPathAware>
18 </windowsSettings>
19 </application>
20</assembly>
diff --git a/src/samples/Dtf/Tools/MakeSfxCA/app.config b/src/samples/Dtf/Tools/MakeSfxCA/app.config
deleted file mode 100644
index 65d3d6c3..00000000
--- a/src/samples/Dtf/Tools/MakeSfxCA/app.config
+++ /dev/null
@@ -1,10 +0,0 @@
1<?xml version="1.0" encoding="utf-8" ?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<configuration>
6 <runtime>
7 <loadFromRemoteSources enabled="true"/>
8 <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=false;Switch.System.IO.BlockLongPaths=false" />
9 </runtime>
10</configuration>
diff --git a/src/samples/Dtf/Tools/SfxCA/packages.config b/src/samples/Dtf/Tools/SfxCA/packages.config
deleted file mode 100644
index 1ffaa8df..00000000
--- a/src/samples/Dtf/Tools/SfxCA/packages.config
+++ /dev/null
@@ -1,4 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<packages>
3 <package id="Nerdbank.GitVersioning" version="3.3.37" targetFramework="native" developmentDependency="true" />
4</packages> \ No newline at end of file
diff --git a/src/samples/Dtf/Tools/Tools.proj b/src/samples/Dtf/Tools/Tools.proj
deleted file mode 100644
index 751247dc..00000000
--- a/src/samples/Dtf/Tools/Tools.proj
+++ /dev/null
@@ -1,15 +0,0 @@
1<?xml version='1.0' encoding='utf-8'?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
6 <ItemGroup>
7 <ProjectReference Include="MakeSfxCA\MakeSfxCA.csproj" />
8 <ProjectReference Include="SfxCA\SfxCA.vcxproj" />
9 <ProjectReference Include="SfxCA\SfxCA.vcxproj">
10 <Properties>Platform=x64</Properties>
11 </ProjectReference>
12 </ItemGroup>
13
14 <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\Traversal.targets" />
15</Project>
diff --git a/src/dtf/WixToolset.Dtf.MSBuild/build/WixToolset.Dtf.MSBuild.props b/src/test/dtf/Directory.Build.props
index 06a98d6e..0035a9e6 100644
--- a/src/dtf/WixToolset.Dtf.MSBuild/build/WixToolset.Dtf.MSBuild.props
+++ b/src/test/dtf/Directory.Build.props
@@ -1,8 +1,11 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 3<Project>
4<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
5 <PropertyGroup> 4 <PropertyGroup>
6 <WixCATargetsPath Condition=" '$(WixCATargetsPath)' == '' ">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\tools\wix.ca.targets'))</WixCATargetsPath> 5 <SegmentName>IntegrationDtf</SegmentName>
6 <SignOutput>false</SignOutput>
7 </PropertyGroup> 7 </PropertyGroup>
8
9 <Import Project="..\..\Directory.Build.props" />
10 <Import Project="Directory$(MSBuildProjectExtension).props" Condition=" Exists('Directory$(MSBuildProjectExtension).props') " />
8</Project> 11</Project>
diff --git a/src/test/dtf/Directory.Build.targets b/src/test/dtf/Directory.Build.targets
new file mode 100644
index 00000000..4e97b6ca
--- /dev/null
+++ b/src/test/dtf/Directory.Build.targets
@@ -0,0 +1,6 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project>
4 <Import Project="..\..\Directory.Build.targets" />
5 <Import Project="Directory$(MSBuildProjectExtension).targets" Condition=" Exists('Directory$(MSBuildProjectExtension).targets') " />
6</Project>
diff --git a/src/test/dtf/DtfE2ETests.sln b/src/test/dtf/DtfE2ETests.sln
new file mode 100644
index 00000000..39d8cf08
--- /dev/null
+++ b/src/test/dtf/DtfE2ETests.sln
@@ -0,0 +1,28 @@
1
2Microsoft Visual Studio Solution File, Format Version 12.00
3# Visual Studio Version 16
4VisualStudioVersion = 16.0.30114.105
5MinimumVisualStudioVersion = 10.0.40219.1
6Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EmbeddedUI", "EmbeddedUI\EmbeddedUI.csproj", "{864B8C50-7895-4485-AC89-900D86FD8C0D}"
7EndProject
8Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleCA", "SampleCA\SampleCA.csproj", "{8F53B9CC-6FBE-493D-9C9A-09B2AD578CE7}"
9EndProject
10Global
11 GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 Debug|Any CPU = Debug|Any CPU
13 Release|Any CPU = Release|Any CPU
14 EndGlobalSection
15 GlobalSection(SolutionProperties) = preSolution
16 HideSolutionNode = FALSE
17 EndGlobalSection
18 GlobalSection(ProjectConfigurationPlatforms) = postSolution
19 {864B8C50-7895-4485-AC89-900D86FD8C0D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
20 {864B8C50-7895-4485-AC89-900D86FD8C0D}.Debug|Any CPU.Build.0 = Debug|Any CPU
21 {864B8C50-7895-4485-AC89-900D86FD8C0D}.Release|Any CPU.ActiveCfg = Debug|Any CPU
22 {864B8C50-7895-4485-AC89-900D86FD8C0D}.Release|Any CPU.Build.0 = Debug|Any CPU
23 {8F53B9CC-6FBE-493D-9C9A-09B2AD578CE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
24 {8F53B9CC-6FBE-493D-9C9A-09B2AD578CE7}.Debug|Any CPU.Build.0 = Debug|Any CPU
25 {8F53B9CC-6FBE-493D-9C9A-09B2AD578CE7}.Release|Any CPU.ActiveCfg = Release|Any CPU
26 {8F53B9CC-6FBE-493D-9C9A-09B2AD578CE7}.Release|Any CPU.Build.0 = Release|Any CPU
27 EndGlobalSection
28EndGlobal
diff --git a/src/test/dtf/EmbeddedUI/AssemblyInfo.cs b/src/test/dtf/EmbeddedUI/AssemblyInfo.cs
new file mode 100644
index 00000000..27aeb535
--- /dev/null
+++ b/src/test/dtf/EmbeddedUI/AssemblyInfo.cs
@@ -0,0 +1,3 @@
1using System.Reflection;
2
3[assembly: AssemblyDescription("Sample managed embedded external UI")]
diff --git a/src/samples/Dtf/EmbeddedUI/EmbeddedUI.csproj b/src/test/dtf/EmbeddedUI/EmbeddedUI.csproj
index e4c52a26..9f745a19 100644
--- a/src/samples/Dtf/EmbeddedUI/EmbeddedUI.csproj
+++ b/src/test/dtf/EmbeddedUI/EmbeddedUI.csproj
@@ -1,14 +1,13 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 1<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
4 <PropertyGroup> 2 <PropertyGroup>
5 <ProjectGuid>{864B8C50-7895-4485-AC89-900D86FD8C0D}</ProjectGuid> 3 <ProjectGuid>{864B8C50-7895-4485-AC89-900D86FD8C0D}</ProjectGuid>
6 <OutputType>Library</OutputType> 4 <OutputType>Library</OutputType>
7 <RootNamespace>WixToolset.Dtf.Samples.EmbeddedUI</RootNamespace> 5 <RootNamespace>WixToolset.Samples.EmbeddedUI</RootNamespace>
8 <AssemblyName>WixToolset.Dtf.Samples.EmbeddedUI</AssemblyName> 6 <AssemblyName>WixToolset.Samples.EmbeddedUI</AssemblyName>
9 <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> 7 <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
10 <FileAlignment>512</FileAlignment> 8 <FileAlignment>512</FileAlignment>
11 </PropertyGroup> 9 </PropertyGroup>
10
12 <ItemGroup> 11 <ItemGroup>
13 <Compile Include="AssemblyInfo.cs" /> 12 <Compile Include="AssemblyInfo.cs" />
14 <Compile Include="InstallProgressCounter.cs" /> 13 <Compile Include="InstallProgressCounter.cs" />
@@ -17,12 +16,14 @@
17 <DependentUpon>SetupWizard.xaml</DependentUpon> 16 <DependentUpon>SetupWizard.xaml</DependentUpon>
18 </Compile> 17 </Compile>
19 </ItemGroup> 18 </ItemGroup>
19
20 <ItemGroup> 20 <ItemGroup>
21 <Page Include="SetupWizard.xaml"> 21 <Page Include="SetupWizard.xaml">
22 <Generator>MSBuild:Compile</Generator> 22 <Generator>MSBuild:Compile</Generator>
23 <SubType>Designer</SubType> 23 <SubType>Designer</SubType>
24 </Page> 24 </Page>
25 </ItemGroup> 25 </ItemGroup>
26
26 <ItemGroup> 27 <ItemGroup>
27 <Reference Include="PresentationCore"> 28 <Reference Include="PresentationCore">
28 <RequiredTargetFramework>3.0</RequiredTargetFramework> 29 <RequiredTargetFramework>3.0</RequiredTargetFramework>
@@ -39,18 +40,10 @@
39 <RequiredTargetFramework>3.0</RequiredTargetFramework> 40 <RequiredTargetFramework>3.0</RequiredTargetFramework>
40 </Reference> 41 </Reference>
41 </ItemGroup> 42 </ItemGroup>
43
42 <ItemGroup> 44 <ItemGroup>
43 <ProjectReference Include="..\..\WixToolset.Dtf.WindowsInstaller\WixToolset.Dtf.WindowsInstaller.csproj"> 45 <PackageReference Include="WixToolset.Dtf.CustomAction" />
44 <Project>{24121677-0ed0-41b5-833f-1b9a18e87bf4}</Project>
45 <Name>WixToolset.Dtf.WindowsInstaller</Name>
46 </ProjectReference>
47 </ItemGroup> 46 </ItemGroup>
48 47
49 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> 48 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
50<!--
51 <PropertyGroup>
52 <PostBuildEvent>"$(TargetDir)..\x86\MakeSfxCA.exe" "$(TargetPath)" "$(TargetDir)SfxCA.dll" "$(IntermediateOutputPath)$(TargetFileName)" "$(TargetDir)WixToolset.Dtf.WindowsInstaller.dll"</PostBuildEvent>
53 </PropertyGroup>
54-->
55
56</Project> 49</Project>
diff --git a/src/samples/Dtf/EmbeddedUI/InstallProgressCounter.cs b/src/test/dtf/EmbeddedUI/InstallProgressCounter.cs
index df77e106..3d75081c 100644
--- a/src/samples/Dtf/EmbeddedUI/InstallProgressCounter.cs
+++ b/src/test/dtf/EmbeddedUI/InstallProgressCounter.cs
@@ -1,6 +1,4 @@
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. 1namespace WixToolset.Samples.EmbeddedUI
2
3namespace WixToolset.Dtf.Samples.EmbeddedUI
4{ 2{
5 using System; 3 using System;
6 using WixToolset.Dtf.WindowsInstaller; 4 using WixToolset.Dtf.WindowsInstaller;
diff --git a/src/samples/Dtf/EmbeddedUI/SampleEmbeddedUI.cs b/src/test/dtf/EmbeddedUI/SampleEmbeddedUI.cs
index 9b26bef5..b9cd213a 100644
--- a/src/samples/Dtf/EmbeddedUI/SampleEmbeddedUI.cs
+++ b/src/test/dtf/EmbeddedUI/SampleEmbeddedUI.cs
@@ -1,6 +1,4 @@
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. 1namespace WixToolset.Samples.EmbeddedUI
2
3namespace WixToolset.Dtf.Samples.EmbeddedUI
4{ 2{
5 using System; 3 using System;
6 using System.Collections.Generic; 4 using System.Collections.Generic;
diff --git a/src/samples/Dtf/EmbeddedUI/SetupWizard.xaml b/src/test/dtf/EmbeddedUI/SetupWizard.xaml
index a43059e8..9fd493a7 100644
--- a/src/samples/Dtf/EmbeddedUI/SetupWizard.xaml
+++ b/src/test/dtf/EmbeddedUI/SetupWizard.xaml
@@ -2,7 +2,7 @@
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 3
4 4
5<Window x:Class="WixToolset.Dtf.Samples.EmbeddedUI.SetupWizard" 5<Window x:Class="WixToolset.Samples.EmbeddedUI.SetupWizard"
6 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 6 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
7 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 7 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
8 Title="Sample Embedded UI" Height="400" Width="540" Visibility="Visible"> 8 Title="Sample Embedded UI" Height="400" Width="540" Visibility="Visible">
diff --git a/src/samples/Dtf/EmbeddedUI/SetupWizard.xaml.cs b/src/test/dtf/EmbeddedUI/SetupWizard.xaml.cs
index b25b8a9e..b846d61f 100644
--- a/src/samples/Dtf/EmbeddedUI/SetupWizard.xaml.cs
+++ b/src/test/dtf/EmbeddedUI/SetupWizard.xaml.cs
@@ -1,6 +1,4 @@
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. 1namespace WixToolset.Samples.EmbeddedUI
2
3namespace WixToolset.Dtf.Samples.EmbeddedUI
4{ 2{
5 using System; 3 using System;
6 using System.Collections.Generic; 4 using System.Collections.Generic;
diff --git a/src/samples/Dtf/ManagedCA/SampleCAs.cs b/src/test/dtf/SampleCA/SampleCA.cs
index 645131c8..fc9f30fe 100644
--- a/src/samples/Dtf/ManagedCA/SampleCAs.cs
+++ b/src/test/dtf/SampleCA/SampleCA.cs
@@ -1,13 +1,11 @@
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. 1namespace WixToolset.Samples
2
3namespace WixToolset.Dtf.Samples.ManagedCA
4{ 2{
5 using System; 3 using System;
6 using System.Collections.Generic; 4 using System.Collections.Generic;
7 using System.IO; 5 using System.IO;
8 using WixToolset.Dtf.WindowsInstaller; 6 using WixToolset.Dtf.WindowsInstaller;
9 7
10 public class SampleCAs 8 public class SampleCA
11 { 9 {
12 [CustomAction] 10 [CustomAction]
13 public static ActionResult SampleCA1(Session session) 11 public static ActionResult SampleCA1(Session session)
diff --git a/src/test/dtf/SampleCA/SampleCA.csproj b/src/test/dtf/SampleCA/SampleCA.csproj
new file mode 100644
index 00000000..fb6d8dca
--- /dev/null
+++ b/src/test/dtf/SampleCA/SampleCA.csproj
@@ -0,0 +1,10 @@
1<Project Sdk="Microsoft.NET.Sdk">
2 <PropertyGroup>
3 <TargetFramework>net472</TargetFramework>
4 <Description>Sample managed custom actions</Description>
5 </PropertyGroup>
6
7 <ItemGroup>
8 <PackageReference Include="WixToolset.Dtf.CustomAction" />
9 </ItemGroup>
10</Project>
diff --git a/src/test/test.cmd b/src/test/test.cmd
index 3158b2c2..4c80ba7d 100644
--- a/src/test/test.cmd
+++ b/src/test/test.cmd
@@ -13,6 +13,8 @@
13 13
14@call burn\test_burn.cmd %_C% %_T% || exit /b 14@call burn\test_burn.cmd %_C% %_T% || exit /b
15 15
16msbuild -t:Restore dtf\DtfE2ETests.sln -p:Configuration=%_C% -nologo -m -warnaserror -bl:%_L%\dtfe2etests.binlog || exit /b
17
16dotnet test wix -c %_C% --nologo -l "trx;LogFileName=%_L%\TestResults\WixToolsetTest.WixE2ETests.trx" || exit /b 18dotnet test wix -c %_C% --nologo -l "trx;LogFileName=%_L%\TestResults\WixToolsetTest.WixE2ETests.trx" || exit /b
17 19
18@popd 20@popd
diff --git a/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj b/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
index f2549605..bab6e9b7 100644
--- a/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
+++ b/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
@@ -15,7 +15,6 @@
15 <ItemGroup> 15 <ItemGroup>
16 <Content Include="build\$(MSBuildThisFileName).props" CopyToOutputDirectory="PreserveNewest" /> 16 <Content Include="build\$(MSBuildThisFileName).props" CopyToOutputDirectory="PreserveNewest" />
17 <Content Include="build\$(MSBuildThisFileName).targets" CopyToOutputDirectory="PreserveNewest" /> 17 <Content Include="build\$(MSBuildThisFileName).targets" CopyToOutputDirectory="PreserveNewest" />
18 <Content Include="tools\wix.ca.targets" CopyToOutputDirectory="PreserveNewest" />
19 <Content Include="tools\wix.harvest.targets" CopyToOutputDirectory="PreserveNewest" /> 18 <Content Include="tools\wix.harvest.targets" CopyToOutputDirectory="PreserveNewest" />
20 <Content Include="tools\WixToolset.Signing.targets" CopyToOutputDirectory="PreserveNewest" /> 19 <Content Include="tools\WixToolset.Signing.targets" CopyToOutputDirectory="PreserveNewest" />
21 <Content Include="tools\wix.props" CopyToOutputDirectory="PreserveNewest" /> 20 <Content Include="tools\wix.props" CopyToOutputDirectory="PreserveNewest" />