WIXFEAT:6164 Update to latest balutil.
Sean Hall committed
May 16, 2020 at 21:52 UTC
bb7b3dc1bc20629e04014b3f049cc30625a1a06c
21 files changed
+178
-177
src/Samples/bafunctions/bafunctions.vcxproj
+6
-6
@@ -2,9 +2,9 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
- <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" />
6
- <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" />
7
- <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" />
6
+ <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" />
7
+ <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
8
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
@@ -57,9 +57,9 @@
57
<PropertyGroup>
58
<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>
59
</PropertyGroup>
60
- <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props'))" />
61
- <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props'))" />
62
- <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
60
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props'))" />
61
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props'))" />
62
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
63
<Error Condition="!Exists('..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
64
</Target>
65
</Project>
src/Samples/bafunctions/packages.config
+3
-3
@@ -1,7 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.15" targetFramework="native" />
5
- <package id="WixToolset.BalUtil" version="4.0.19" targetFramework="native" />
6
- <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5
+ <package id="WixToolset.BalUtil" version="4.0.22" targetFramework="native" />
6
+ <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
7
</packages>
\ No newline at end of file
src/WixToolset.Mba.Host/WixToolset.Mba.Host.csproj
+1
-1
@@ -44,7 +44,7 @@
44
<Reference Include="System.Data" />
45
<Reference Include="System.Xml" />
46
<Reference Include="WixToolset.Mba.Core">
47
- <HintPath>..\..\packages\WixToolset.Mba.Core.4.0.19\lib\net20\WixToolset.Mba.Core.dll</HintPath>
47
+ <HintPath>..\..\packages\WixToolset.Mba.Core.4.0.22\lib\net20\WixToolset.Mba.Core.dll</HintPath>
48
</Reference>
49
</ItemGroup>
50
<ItemGroup>
src/WixToolset.Mba.Host/packages.config
+1
-1
@@ -1,5 +1,5 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="net20" developmentDependency="true" />
4
- <package id="WixToolset.Mba.Core" version="4.0.19" targetFramework="net20" />
4
+ <package id="WixToolset.Mba.Core" version="4.0.22" targetFramework="net20" />
5
</packages>
\ No newline at end of file
src/dnchost/dnchost.vcxproj
+6
-6
@@ -1,9 +1,9 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
4
- <Import Project="..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" />
5
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
4
+ <Import Project="..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
7
<ItemGroup Label="ProjectConfigurations">
8
<ProjectConfiguration Include="Debug|Win32">
9
<Configuration>Debug</Configuration>
@@ -69,9 +69,9 @@
69
<PropertyGroup>
70
<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>
71
</PropertyGroup>
72
- <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props'))" />
73
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props'))" />
74
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
72
+ <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props'))" />
73
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props'))" />
74
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
75
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
76
</Target>
77
</Project>
\ No newline at end of file
src/dnchost/packages.config
+3
-3
@@ -2,7 +2,7 @@
2
<packages>
3
<package id="runtime.win-x86.Microsoft.NETCore.DotNetAppHost" version="3.1.3" targetFramework="native" />
4
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
5
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.15" targetFramework="native" />
6
- <package id="WixToolset.BalUtil" version="4.0.19" targetFramework="native" />
7
- <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
5
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
6
+ <package id="WixToolset.BalUtil" version="4.0.22" targetFramework="native" />
7
+ <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
8
</packages>
\ No newline at end of file
src/mbahost/mbahost.vcxproj
+6
-6
@@ -2,9 +2,9 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
- <Import Project="..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" />
6
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" />
7
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" />
6
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" />
7
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
8
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
@@ -68,9 +68,9 @@
68
<PropertyGroup>
69
<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>
70
</PropertyGroup>
71
- <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props'))" />
72
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props'))" />
73
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
71
+ <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props'))" />
72
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props'))" />
73
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
74
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
75
</Target>
76
</Project>
\ No newline at end of file
src/mbahost/packages.config
+3
-3
@@ -1,7 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.15" targetFramework="native" />
5
- <package id="WixToolset.BalUtil" version="4.0.19" targetFramework="native" />
6
- <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5
+ <package id="WixToolset.BalUtil" version="4.0.22" targetFramework="native" />
6
+ <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
7
</packages>
\ No newline at end of file
src/test/examples/EarliestCoreMBA/Example.EarliestCoreMBA.csproj
+1
-1
@@ -13,6 +13,6 @@
13
14
<ItemGroup>
15
<PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
16
- <PackageReference Include="WixToolset.Mba.Core" Version="4.0.19" />
16
+ <PackageReference Include="WixToolset.Mba.Core" Version="4.0.22" />
17
</ItemGroup>
18
</Project>
\ No newline at end of file
src/test/examples/FullFramework2MBA/Example.FullFramework2MBA.csproj
+3
-3
@@ -3,7 +3,7 @@
3
4
5
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
6
- <Import Project="..\..\..\..\packages\WixToolset.Mba.Core.4.0.19\build\net20\WixToolset.Mba.Core.props" Condition="Exists('..\..\..\..\packages\WixToolset.Mba.Core.4.0.19\build\net20\WixToolset.Mba.Core.props')" />
6
+ <Import Project="..\..\..\..\packages\WixToolset.Mba.Core.4.0.22\build\net20\WixToolset.Mba.Core.props" Condition="Exists('..\..\..\..\packages\WixToolset.Mba.Core.4.0.22\build\net20\WixToolset.Mba.Core.props')" />
7
<PropertyGroup>
8
<ProjectGuid>{CC4236FC-226E-4232-AB50-24CBEC4D314D}</ProjectGuid>
9
<AssemblyName>Example.FullFramework2MBA</AssemblyName>
@@ -39,7 +39,7 @@
39
<Reference Include="System.Data" />
40
<Reference Include="System.Xml" />
41
<Reference Include="WixToolset.Mba.Core">
42
- <HintPath>..\..\..\..\packages\WixToolset.Mba.Core.4.0.19\lib\net20\WixToolset.Mba.Core.dll</HintPath>
42
+ <HintPath>..\..\..\..\packages\WixToolset.Mba.Core.4.0.22\lib\net20\WixToolset.Mba.Core.dll</HintPath>
43
</Reference>
44
</ItemGroup>
45
@@ -50,7 +50,7 @@
50
<PropertyGroup>
51
<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>
52
</PropertyGroup>
53
- <Error Condition="!Exists('..\..\..\..\packages\WixToolset.Mba.Core.4.0.19\build\net20\WixToolset.Mba.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.Mba.Core.4.0.19\build\net20\WixToolset.Mba.Core.props'))" />
53
+ <Error Condition="!Exists('..\..\..\..\packages\WixToolset.Mba.Core.4.0.22\build\net20\WixToolset.Mba.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.Mba.Core.4.0.22\build\net20\WixToolset.Mba.Core.props'))" />
54
<Error Condition="!Exists('..\..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
55
</Target>
56
</Project>
\ No newline at end of file
src/test/examples/FullFramework2MBA/packages.config
+1
-1
@@ -1,4 +1,4 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
- <package id="WixToolset.Mba.Core" version="4.0.19" targetFramework="net461" />
3
+ <package id="WixToolset.Mba.Core" version="4.0.22" targetFramework="net461" />
4
</packages>
\ No newline at end of file
src/test/examples/FullFramework4MBA/Example.FullFramework4MBA.csproj
+1
-1
@@ -9,7 +9,7 @@
9
10
<ItemGroup>
11
<PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
12
- <PackageReference Include="WixToolset.Mba.Core" Version="4.0.19" PrivateAssets="All" />
12
+ <PackageReference Include="WixToolset.Mba.Core" Version="4.0.22" PrivateAssets="All" />
13
</ItemGroup>
14
15
<ItemGroup>
src/test/examples/LatestCoreMBA/Example.LatestCoreMBA.csproj
+1
-1
@@ -18,6 +18,6 @@
18
19
<ItemGroup>
20
<PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
21
- <PackageReference Include="WixToolset.Mba.Core" Version="4.0.19" />
21
+ <PackageReference Include="WixToolset.Mba.Core" Version="4.0.22" />
22
</ItemGroup>
23
</Project>
\ No newline at end of file
src/test/examples/TestEngine/Example.TestEngine.vcxproj
+6
-6
@@ -1,9 +1,9 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
4
- <Import Project="..\..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" />
5
- <Import Project="..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
4
+ <Import Project="..\..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" />
5
+ <Import Project="..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
7
<ItemGroup Label="ProjectConfigurations">
8
<ProjectConfiguration Include="Debug|Win32">
9
<Configuration>Debug</Configuration>
@@ -68,8 +68,8 @@
68
<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>
69
</PropertyGroup>
70
<Error Condition="!Exists('..\..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
71
- <Error Condition="!Exists('..\..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props'))" />
72
- <Error Condition="!Exists('..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props'))" />
73
- <Error Condition="!Exists('..\..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
71
+ <Error Condition="!Exists('..\..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props'))" />
72
+ <Error Condition="!Exists('..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props'))" />
73
+ <Error Condition="!Exists('..\..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
74
</Target>
75
</Project>
\ No newline at end of file
src/test/examples/TestEngine/TestEngine.cpp
+2
-2
@@ -53,7 +53,7 @@ HRESULT TestEngine::LoadBA(
53
m_pCreateResults->cbSize = sizeof(BOOTSTRAPPER_CREATE_RESULTS);
54
55
m_hBAModule = ::LoadLibraryExW(wzBAFilePath, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
56
- ExitOnNullWithLastError(m_hBAModule, hr, "Failed to load BA dll.");
56
+ ConsoleExitOnNullWithLastError(m_hBAModule, hr, CONSOLE_COLOR_RED, "Failed to load BA dll.");
57
58
pfnCreate = (PFN_BOOTSTRAPPER_APPLICATION_CREATE)::GetProcAddress(m_hBAModule, "BootstrapperApplicationCreate");
59
ConsoleExitOnNull(pfnCreate, hr, E_OUTOFMEMORY, CONSOLE_COLOR_RED, "Failed to get address for BootstrapperApplicationCreate.");
@@ -181,7 +181,7 @@ HRESULT TestEngine::BAEngineQuit(
181
182
if (!::PostThreadMessageW(m_dwThreadId, WM_TESTENG_QUIT, static_cast<WPARAM>(pArgs->dwExitCode), 0))
183
{
184
- ExitWithLastError(hr, "Failed to post shutdown message.");
184
+ ConsoleExitWithLastError(hr, CONSOLE_COLOR_RED, "Failed to post shutdown message.");
185
}
186
187
LExit:
src/test/examples/TestEngine/packages.config
+3
-3
@@ -1,7 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.15" targetFramework="native" />
5
- <package id="WixToolset.BalUtil" version="4.0.19" targetFramework="native" />
6
- <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5
+ <package id="WixToolset.BalUtil" version="4.0.22" targetFramework="native" />
6
+ <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
7
</packages>
\ No newline at end of file
src/test/examples/WPFCoreMBA/Example.WPFCoreMBA.csproj
+2
-2
@@ -1,4 +1,4 @@
1
-<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
1
+<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
2
3
<PropertyGroup>
4
<TargetFramework>netcoreapp3.1</TargetFramework>
@@ -11,6 +11,6 @@
11
12
<ItemGroup>
13
<PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
14
- <PackageReference Include="WixToolset.Mba.Core" Version="4.0.19" />
14
+ <PackageReference Include="WixToolset.Mba.Core" Version="4.0.22" />
15
</ItemGroup>
16
</Project>
\ No newline at end of file
src/wixstdba/WixStandardBootstrapperApplication.cpp
+113
-119
@@ -146,13 +146,13 @@ static THEME_ASSIGN_CONTROL_ID vrgInitControls[] = {
146
{ WIXSTDBA_CONTROL_FAILURE_RESTART_BUTTON, L"FailureRestartButton" },
147
};
148
149
-typedef struct _WIXSTDBA_PREREQ_PACKAGE
149
+typedef struct _WIXSTDBA_PACKAGE_INFO
150
{
151
LPWSTR sczPackageId;
152
BOOL fWasAlreadyInstalled;
153
BOOL fPlannedToBeInstalled;
154
BOOL fSuccessfullyInstalled;
155
-} WIXSTDBA_PREREQ_PACKAGE;
155
+} WIXSTDBA_PACKAGE_INFO;
156
157
158
static HRESULT DAPI EvaluateVariableConditionCallback(
@@ -268,7 +268,11 @@ public: // IBootstrapperApplication
268
__inout BOOL* pfCancel
269
)
270
{
271
- BalInfoAddRelatedBundleAsPackage(&m_Bundle.packages, wzBundleId, relationType, fPerMachine);
271
+ BAL_INFO_PACKAGE* pPackage = NULL;
272
+ if (SUCCEEDED(BalInfoAddRelatedBundleAsPackage(&m_Bundle.packages, wzBundleId, relationType, fPerMachine, &pPackage)))
273
+ {
274
+ InitializePackageInfoForPackage(pPackage);
275
+ }
276
277
// If we're not doing a prerequisite install, remember when our bundle would cause a downgrade.
278
if (!m_fPrereq && BOOTSTRAPPER_RELATED_OPERATION_DOWNGRADE == operation)
@@ -286,13 +290,15 @@ public: // IBootstrapperApplication
290
__in BOOTSTRAPPER_PACKAGE_STATE state
291
)
292
{
289
- WIXSTDBA_PREREQ_PACKAGE* pPrereqPackage = NULL;
293
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = NULL;
294
BAL_INFO_PACKAGE* pPackage = NULL;
291
- HRESULT hr = GetPrereqPackage(wzPackageId, &pPrereqPackage, &pPackage);
292
- if (SUCCEEDED(hr) && BOOTSTRAPPER_PACKAGE_STATE_PRESENT == state)
295
+
296
+ if (BOOTSTRAPPER_PACKAGE_STATE_PRESENT == state &&
297
+ SUCCEEDED(GetPackageInfo(wzPackageId, &pPackageInfo, &pPackage)) &&
298
+ pPackageInfo)
299
{
294
- // If the prerequisite package is already installed, remember that.
295
- pPrereqPackage->fWasAlreadyInstalled = TRUE;
300
+ // If the package is already installed, remember that.
301
+ pPackageInfo->fWasAlreadyInstalled = TRUE;
302
}
303
304
return S_OK;
@@ -314,9 +320,11 @@ public: // IBootstrapperApplication
320
m_fPrereqAlreadyInstalled = TRUE;
321
322
// At this point we have to assume that all prerequisite packages need to be installed, so set to false if any of them aren't installed.
317
- for (DWORD i = 0; i < m_cPrereqPackages; ++i)
323
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
324
{
319
- if (m_rgPrereqPackages[i].sczPackageId && !m_rgPrereqPackages[i].fWasAlreadyInstalled)
325
+ BAL_INFO_PACKAGE* pPackage = &m_Bundle.packages.rgPackages[i];
326
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = reinterpret_cast<WIXSTDBA_PACKAGE_INFO*>(pPackage->pvCustomData);
327
+ if (pPackage->fPrereqPackage && pPackageInfo && !pPackageInfo->fWasAlreadyInstalled)
328
{
329
m_fPrereqAlreadyInstalled = FALSE;
330
break;
@@ -384,17 +392,17 @@ public: // IBootstrapperApplication
392
)
393
{
394
HRESULT hr = S_OK;
387
- WIXSTDBA_PREREQ_PACKAGE* pPrereqPackage = NULL;
395
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = NULL;
396
BAL_INFO_PACKAGE* pPackage = NULL;
397
398
// If we're planning to install a prerequisite, install it. The prerequisite needs to be installed
399
// in all cases (even uninstall!) so the BA can load next.
400
if (m_fPrereq)
401
{
394
- // Only install prerequisite packages, and check the InstallCondition on prerequisite support packages.
402
+ // Only install prerequisite packages, and check the InstallCondition on them.
403
BOOL fInstall = FALSE;
396
- hr = GetPrereqPackage(wzPackageId, &pPrereqPackage, &pPackage);
397
- if (SUCCEEDED(hr) && pPackage)
404
+ hr = GetPackageInfo(wzPackageId, &pPackageInfo, &pPackage);
405
+ if (SUCCEEDED(hr) && pPackage->fPrereqPackage && pPackageInfo)
406
{
407
if (pPackage->sczInstallCondition && *pPackage->sczInstallCondition)
408
{
@@ -410,7 +418,7 @@ public: // IBootstrapperApplication
418
fInstall = TRUE;
419
}
420
413
- pPrereqPackage->fPlannedToBeInstalled = fInstall;
421
+ pPackageInfo->fPlannedToBeInstalled = fInstall;
422
}
423
424
if (fInstall)
@@ -459,9 +467,11 @@ public: // IBootstrapperApplication
467
m_fPrereqAlreadyInstalled = TRUE;
468
469
// Now that we've planned the packages, we can focus on the prerequisite packages that are supposed to be installed.
462
- for (DWORD i = 0; i < m_cPrereqPackages; ++i)
470
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
471
{
464
- if (m_rgPrereqPackages[i].sczPackageId && !m_rgPrereqPackages[i].fWasAlreadyInstalled && m_rgPrereqPackages[i].fPlannedToBeInstalled)
472
+ BAL_INFO_PACKAGE* pPackage = &m_Bundle.packages.rgPackages[i];
473
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = reinterpret_cast<WIXSTDBA_PACKAGE_INFO*>(pPackage->pvCustomData);
474
+ if (pPackage->fPrereqPackage && pPackageInfo && !pPackageInfo->fWasAlreadyInstalled && pPackageInfo->fPlannedToBeInstalled)
475
{
476
m_fPrereqAlreadyInstalled = FALSE;
477
break;
@@ -706,6 +716,8 @@ public: // IBootstrapperApplication
716
__in_z LPCWSTR wzPackageId,
717
__in BOOL fExecute,
718
__in BOOTSTRAPPER_ACTION_STATE action,
719
+ __in INSTALLUILEVEL uiLevel,
720
+ __in BOOL fDisableExternalUiHandler,
721
__inout BOOL* pfCancel
722
)
723
{
@@ -750,12 +762,7 @@ public: // IBootstrapperApplication
762
wz = sczFormattedString ? sczFormattedString : pPackage->sczDisplayName ? pPackage->sczDisplayName : wzPackageId;
763
}
764
753
- // Needs to match MsiEngineCalculateInstallUiLevel in msiengine.cpp in Burn.
754
- fShowingInternalUiThisPackage = pPackage && pPackage->fDisplayInternalUI &&
755
- BOOTSTRAPPER_ACTION_STATE_UNINSTALL != action &&
756
- BOOTSTRAPPER_ACTION_STATE_REPAIR != action &&
757
- (BOOTSTRAPPER_DISPLAY_FULL == m_command.display ||
758
- BOOTSTRAPPER_DISPLAY_PASSIVE == m_command.display);
765
+ fShowingInternalUiThisPackage = INSTALLUILEVEL_NONE != (INSTALLUILEVEL_NONE & uiLevel);
766
767
ThemeSetTextControl(m_pTheme, WIXSTDBA_CONTROL_EXECUTE_PROGRESS_PACKAGE_TEXT, wz);
768
ThemeSetTextControl(m_pTheme, WIXSTDBA_CONTROL_OVERALL_PROGRESS_PACKAGE_TEXT, wz);
@@ -763,7 +770,7 @@ public: // IBootstrapperApplication
770
771
::EnterCriticalSection(&m_csShowingInternalUiThisPackage);
772
m_fShowingInternalUiThisPackage = fShowingInternalUiThisPackage;
766
- hr = __super::OnExecutePackageBegin(wzPackageId, fExecute, action, pfCancel);
773
+ hr = __super::OnExecutePackageBegin(wzPackageId, fExecute, action, uiLevel, fDisableExternalUiHandler, pfCancel);
774
::LeaveCriticalSection(&m_csShowingInternalUiThisPackage);
775
776
ReleaseStr(sczFormattedString);
@@ -811,16 +818,16 @@ public: // IBootstrapperApplication
818
819
hr = __super::OnExecutePackageComplete(wzPackageId, hrStatus, restart, recommendation, pAction);
820
814
- WIXSTDBA_PREREQ_PACKAGE* pPrereqPackage = NULL;
821
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = NULL;
822
BAL_INFO_PACKAGE* pPackage;
816
- HRESULT hrPrereq = GetPrereqPackage(wzPackageId, &pPrereqPackage, &pPackage);
817
- if (SUCCEEDED(hrPrereq))
823
+ HRESULT hrPrereq = GetPackageInfo(wzPackageId, &pPackageInfo, &pPackage);
824
+ if (SUCCEEDED(hrPrereq) && pPackageInfo)
825
{
819
- pPrereqPackage->fSuccessfullyInstalled = SUCCEEDED(hrStatus);
826
+ pPackageInfo->fSuccessfullyInstalled = SUCCEEDED(hrStatus);
827
828
// If the prerequisite required a restart (any restart) then do an immediate
829
// restart to ensure that the bundle will get launched again post reboot.
823
- if (BOOTSTRAPPER_APPLY_RESTART_NONE != restart)
830
+ if (m_fPrereq && pPackage->fPrereqPackage && BOOTSTRAPPER_APPLY_RESTART_NONE != restart)
831
{
832
*pAction = BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION_RESTART;
833
}
@@ -931,11 +938,13 @@ public: // IBootstrapperApplication
938
m_fPrereqInstalled = TRUE;
939
BOOL fInstalledAPackage = FALSE;
940
934
- for (DWORD i = 0; i < m_cPrereqPackages; ++i)
941
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
942
{
936
- if (m_rgPrereqPackages[i].sczPackageId && m_rgPrereqPackages[i].fPlannedToBeInstalled && !m_rgPrereqPackages[i].fWasAlreadyInstalled)
943
+ BAL_INFO_PACKAGE* pPackage = &m_Bundle.packages.rgPackages[i];
944
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = reinterpret_cast<WIXSTDBA_PACKAGE_INFO*>(pPackage->pvCustomData);
945
+ if (pPackage->fPrereqPackage && pPackageInfo && pPackageInfo->fPlannedToBeInstalled && !pPackageInfo->fWasAlreadyInstalled)
946
{
938
- if (m_rgPrereqPackages[i].fSuccessfullyInstalled)
947
+ if (pPackageInfo->fSuccessfullyInstalled)
948
{
949
fInstalledAPackage = TRUE;
950
}
@@ -1164,6 +1173,9 @@ public: // IBootstrapperApplication
1173
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE:
1174
OnLaunchApprovedExeCompleteFallback(reinterpret_cast<BA_ONLAUNCHAPPROVEDEXECOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONLAUNCHAPPROVEDEXECOMPLETE_RESULTS*>(pvResults));
1175
break;
1176
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANMSIPACKAGE:
1177
+ OnPlanMsiPackageFallback(reinterpret_cast<BA_ONPLANMSIPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANMSIPACKAGE_RESULTS*>(pvResults));
1178
+ break;
1179
default:
1180
BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message);
1181
m_pfnBAFunctionsProc((BA_FUNCTIONS_MESSAGE)message, pvArgs, pvResults, m_pvBAFunctionsProcContext);
@@ -1617,6 +1629,18 @@ private: // privates
1629
m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext);
1630
}
1631
1632
+ void OnPlanMsiPackageFallback(
1633
+ __in BA_ONPLANMSIPACKAGE_ARGS* pArgs,
1634
+ __inout BA_ONPLANMSIPACKAGE_RESULTS* pResults
1635
+ )
1636
+ {
1637
+ BURN_MSI_PROPERTY actionMsiProperty = pResults->actionMsiProperty;
1638
+ INSTALLUILEVEL uiLevel = pResults->uiLevel;
1639
+ BOOL fDisableExternalUiHandler = pResults->fDisableExternalUiHandler;
1640
+ m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONPLANMSIPACKAGE, pArgs, pResults, m_pvBAFunctionsProcContext);
1641
+ BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_MSI_PACKAGE, m_hModule, pArgs->wzPackageId, actionMsiProperty, uiLevel, fDisableExternalUiHandler ? "yes" : "no", pResults->actionMsiProperty, pResults->uiLevel, pResults->fDisableExternalUiHandler ? "yes" : "no");
1642
+ }
1643
+
1644
//
1645
// UiThreadProc - entrypoint for UI thread.
1646
//
@@ -1752,10 +1776,13 @@ private: // privates
1776
GetBundleFileVersion();
1777
// don't fail if we couldn't get the version info; best-effort only
1778
1779
+ hr = InitializePackageInfo();
1780
+ BalExitOnFailure(hr, "Failed to initialize wixstdba package information.");
1781
+
1782
if (m_fPrereq)
1783
{
1757
- hr = ParsePrerequisiteInformationFromXml(pixdManifest);
1758
- BalExitOnFailure(hr, "Failed to read prerequisite information.");
1784
+ hr = InitializePrerequisiteInformation();
1785
+ BalExitOnFailure(hr, "Failed to initialize prerequisite information.");
1786
}
1787
else
1788
{
@@ -1982,100 +2009,77 @@ private: // privates
2009
}
2010
2011
1985
- HRESULT ParsePrerequisiteInformationFromXml(
1986
- __in IXMLDOMDocument* pixdManifest
1987
- )
2012
+ HRESULT InitializePackageInfo()
2013
{
2014
HRESULT hr = S_OK;
1990
- IXMLDOMNode* pNode = NULL;
1991
- IXMLDOMNodeList* pNodes = NULL;
1992
- DWORD cNodes = 0;
1993
- LPWSTR scz = NULL;
1994
- WIXSTDBA_PREREQ_PACKAGE* pPrereqPackage = NULL;
2015
BAL_INFO_PACKAGE* pPackage = NULL;
2016
1997
- hr = XmlSelectNodes(pixdManifest, L"/BootstrapperApplicationData/WixMbaPrereqInformation", &pNodes);
1998
- if (S_FALSE == hr)
2017
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
2018
{
2000
- hr = E_INVALIDARG;
2001
- BalExitOnFailure(hr, "BootstrapperApplication.xml manifest is missing prerequisite information.");
2002
- }
2003
- BalExitOnFailure(hr, "Failed to select prerequisite information nodes.");
2019
+ pPackage = &m_Bundle.packages.rgPackages[i];
2020
2005
- hr = pNodes->get_length((long*)&cNodes);
2006
- BalExitOnFailure(hr, "Failed to get prerequisite information node count.");
2021
+ hr = InitializePackageInfoForPackage(pPackage);
2022
+ BalExitOnFailure(hr, "Failed to initialize wixstdba package info for package: %ls.", pPackage->sczId);
2023
+ }
2024
2008
- m_cPrereqPackages = cNodes;
2009
- m_rgPrereqPackages = static_cast<WIXSTDBA_PREREQ_PACKAGE*>(MemAlloc(sizeof(WIXSTDBA_PREREQ_PACKAGE) * m_cPrereqPackages, TRUE));
2025
+ LExit:
2026
+ return hr;
2027
+ }
2028
2011
- hr = DictCreateWithEmbeddedKey(&m_shPrereqSupportPackages, m_cPrereqPackages, reinterpret_cast<void **>(&m_rgPrereqPackages), offsetof(WIXSTDBA_PREREQ_PACKAGE, sczPackageId), DICT_FLAG_NONE);
2012
- BalExitOnFailure(hr, "Failed to create the prerequisite package dictionary.");
2029
2014
- for (DWORD i = 0; i < cNodes; ++i)
2015
- {
2016
- hr = XmlNextElement(pNodes, &pNode, NULL);
2017
- BalExitOnFailure(hr, "Failed to get next node.");
2030
+ HRESULT InitializePackageInfoForPackage(
2031
+ __in BAL_INFO_PACKAGE* pPackage
2032
+ )
2033
+ {
2034
+ HRESULT hr = S_OK;
2035
2019
- hr = XmlGetAttributeEx(pNode, L"PackageId", &scz);
2020
- BalExitOnFailure(hr, "Failed to get @PackageId.");
2036
+ pPackage->pvCustomData = MemAlloc(sizeof(WIXSTDBA_PACKAGE_INFO), TRUE);
2037
+ BalExitOnNull(pPackage->pvCustomData, hr, E_OUTOFMEMORY, "Failed to allocate memory for wixstdba package info.");
2038
2022
- hr = DictGetValue(m_shPrereqSupportPackages, scz, reinterpret_cast<void **>(&pPrereqPackage));
2023
- if (SUCCEEDED(hr))
2024
- {
2025
- hr = HRESULT_FROM_WIN32(ERROR_INVALID_DATA);
2026
- BalExitOnFailure(hr, "Duplicate prerequisite information: %ls", scz);
2027
- }
2028
- else if (E_NOTFOUND != hr)
2029
- {
2030
- BalExitOnFailure(hr, "Failed to check if \"%ls\" was in the prerequisite package dictionary.", scz);
2031
- }
2039
+ LExit:
2040
+ return hr;
2041
+ }
2042
2033
- hr = BalInfoFindPackageById(&m_Bundle.packages, scz, &pPackage);
2034
- BalExitOnFailure(hr, "Failed to get info about \"%ls\" from BootstrapperApplicationData.", scz);
2043
2036
- pPrereqPackage = &m_rgPrereqPackages[i];
2037
- pPrereqPackage->sczPackageId = pPackage->sczId;
2038
- hr = DictAddValue(m_shPrereqSupportPackages, pPrereqPackage);
2039
- BalExitOnFailure(hr, "Failed to add \"%ls\" to the prerequisite package dictionary.", pPrereqPackage->sczPackageId);
2044
+ HRESULT InitializePrerequisiteInformation()
2045
+ {
2046
+ HRESULT hr = S_OK;
2047
+ BAL_INFO_PACKAGE* pPackage = NULL;
2048
2041
- hr = XmlGetAttributeEx(pNode, L"LicenseFile", &scz);
2042
- if (E_NOTFOUND != hr)
2049
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
2050
+ {
2051
+ pPackage = &m_Bundle.packages.rgPackages[i];
2052
+ if (!pPackage->fPrereqPackage)
2053
{
2044
- BalExitOnFailure(hr, "Failed to get @LicenseFile.");
2054
+ continue;
2055
+ }
2056
2057
+ if (pPackage->sczPrereqLicenseFile)
2058
+ {
2059
if (m_sczLicenseFile)
2060
{
2061
hr = HRESULT_FROM_WIN32(ERROR_INVALID_DATA);
2062
BalExitOnFailure(hr, "More than one license file specified in prerequisite info.");
2063
}
2064
2052
- m_sczLicenseFile = scz;
2053
- scz = NULL;
2065
+ hr = StrAllocString(&m_sczLicenseFile, pPackage->sczPrereqLicenseFile, 0);
2066
+ BalExitOnFailure(hr, "Failed to copy license file location from prereq package.");
2067
}
2068
2056
- hr = XmlGetAttributeEx(pNode, L"LicenseUrl", &scz);
2057
- if (E_NOTFOUND != hr)
2069
+ if (pPackage->sczPrereqLicenseUrl)
2070
{
2059
- BalExitOnFailure(hr, "Failed to get @LicenseUrl.");
2060
-
2071
if (m_sczLicenseUrl)
2072
{
2073
hr = HRESULT_FROM_WIN32(ERROR_INVALID_DATA);
2074
BalExitOnFailure(hr, "More than one license URL specified in prerequisite info.");
2075
}
2076
2067
- m_sczLicenseUrl = scz;
2068
- scz = NULL;
2077
+ hr = StrAllocString(&m_sczLicenseUrl, pPackage->sczPrereqLicenseUrl, 0);
2078
+ BalExitOnFailure(hr, "Failed to copy license URL from prereq package.");
2079
}
2070
-
2071
- // Prepare next iteration.
2072
- ReleaseNullObject(pNode);
2080
}
2081
2082
LExit:
2076
- ReleaseObject(pNode);
2077
- ReleaseObject(pNodes);
2078
- ReleaseStr(scz);
2083
return hr;
2084
}
2085
@@ -2182,37 +2186,31 @@ private: // privates
2186
return hr;
2187
}
2188
2185
- HRESULT GetPrereqPackage(
2189
+ HRESULT GetPackageInfo(
2190
__in_z LPCWSTR wzPackageId,
2187
- __out WIXSTDBA_PREREQ_PACKAGE** ppPrereqPackage,
2191
+ __out WIXSTDBA_PACKAGE_INFO** ppPackageInfo,
2192
__out BAL_INFO_PACKAGE** ppPackage
2193
)
2194
{
2195
HRESULT hr = E_NOTFOUND;
2192
- WIXSTDBA_PREREQ_PACKAGE* pPrereqPackage = NULL;
2196
+ WIXSTDBA_PACKAGE_INFO* pPackageInfo = NULL;
2197
BAL_INFO_PACKAGE* pPackage = NULL;
2198
2199
Assert(wzPackageId && *wzPackageId);
2200
Assert(ppPackage);
2197
- Assert(ppPrereqPackage);
2201
+ Assert(ppPackageInfo);
2202
2199
- if (m_shPrereqSupportPackages)
2203
+ hr = BalInfoFindPackageById(&m_Bundle.packages, wzPackageId, &pPackage);
2204
+ if (E_NOTFOUND != hr)
2205
{
2201
- hr = DictGetValue(m_shPrereqSupportPackages, wzPackageId, reinterpret_cast<void **>(&pPrereqPackage));
2202
- if (E_NOTFOUND != hr)
2203
- {
2204
- ExitOnFailure(hr, "Failed to check the dictionary of prerequisite packages.");
2206
+ ExitOnFailure(hr, "Failed trying to find the requested package.");
2207
2206
- // Ignore error.
2207
- BalInfoFindPackageById(&m_Bundle.packages, wzPackageId, &pPackage);
2208
- }
2208
+ pPackageInfo = reinterpret_cast<WIXSTDBA_PACKAGE_INFO*>(pPackage->pvCustomData);
2209
}
2210
2211
- if (pPrereqPackage)
2212
- {
2213
- *ppPrereqPackage = pPrereqPackage;
2214
- *ppPackage = pPackage;
2215
- }
2211
+ *ppPackageInfo = pPackageInfo;
2212
+ *ppPackage = pPackage;
2213
+
2214
LExit:
2215
return hr;
2216
}
@@ -3636,9 +3634,6 @@ public:
3634
m_fSupportCacheOnly = FALSE;
3635
3636
m_sdOverridableVariables = NULL;
3639
- m_shPrereqSupportPackages = NULL;
3640
- m_rgPrereqPackages = NULL;
3641
- m_cPrereqPackages = 0;
3637
m_pTaskbarList = NULL;
3638
m_uTaskbarButtonCreatedMessage = UINT_MAX;
3639
m_fTaskbarButtonOK = FALSE;
@@ -3667,11 +3662,14 @@ public:
3662
AssertSz(!::IsWindow(m_hWnd), "Window should have been destroyed before destructor.");
3663
AssertSz(!m_pTheme, "Theme should have been released before destructor.");
3664
3665
+ for (DWORD i = 0; i < m_Bundle.packages.cPackages; ++i)
3666
+ {
3667
+ ReleaseMem(m_Bundle.packages.rgPackages[i].pvCustomData);
3668
+ }
3669
+
3670
::DeleteCriticalSection(&m_csShowingInternalUiThisPackage);
3671
ReleaseObject(m_pTaskbarList);
3672
ReleaseDict(m_sdOverridableVariables);
3673
- ReleaseDict(m_shPrereqSupportPackages);
3674
- ReleaseMem(m_rgPrereqPackages);
3673
ReleaseStr(m_sczFailedMessage);
3674
ReleaseStr(m_sczConfirmCloseMessage);
3675
BalConditionsUninitialize(&m_Conditions);
@@ -3739,10 +3737,6 @@ private:
3737
3738
STRINGDICT_HANDLE m_sdOverridableVariables;
3739
3742
- WIXSTDBA_PREREQ_PACKAGE* m_rgPrereqPackages;
3743
- DWORD m_cPrereqPackages;
3744
- STRINGDICT_HANDLE m_shPrereqSupportPackages;
3745
-
3740
BOOL m_fPrereq;
3741
BOOL m_fPrereqInstalled;
3742
BOOL m_fPrereqAlreadyInstalled;
src/wixstdba/packages.config
+3
-3
@@ -1,7 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.15" targetFramework="native" />
5
- <package id="WixToolset.BalUtil" version="4.0.19" targetFramework="native" />
6
- <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5
+ <package id="WixToolset.BalUtil" version="4.0.22" targetFramework="native" />
6
+ <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
7
</packages>
\ No newline at end of file
src/wixstdba/wixstdba.mc
+7
@@ -71,3 +71,10 @@ Language=English
71
WIXSTDBA: Planned MSI feature: %2!ls! for %1!ls!, wixstdba requested: %3!hs!, bafunctions requested: %4!hs!
72
.
73
74
+MessageId=7
75
+Severity=Success
76
+SymbolicName=MSG_WIXSTDBA_PLANNED_MSI_PACKAGE
77
+Language=English
78
+WIXSTDBA: Planned MSI package: %1!ls!, wixstdba requested: actionMsiProperty=%2!d!;uiLevel=%3!d!;disableExternalUiHandler=%4!hs!, bafunctions requested: actionMsiProperty=%5!d!;uiLevel=%6!d!;disableExternalUiHandler=%7!hs!
79
+.
80
+
src/wixstdba/wixstdba.vcxproj
+6
-6
@@ -2,9 +2,9 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
- <Import Project="..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" />
6
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" />
7
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" />
6
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" />
7
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
8
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
@@ -107,9 +107,9 @@ rc.exe -fo "$(OutDir)wixstdba.res" "$(IntDir)wixstdba.messages.rc"</Command>
107
<PropertyGroup>
108
<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>
109
</PropertyGroup>
110
- <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.19\build\WixToolset.BalUtil.props'))" />
111
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.15\build\WixToolset.BootstrapperCore.Native.props'))" />
112
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
110
+ <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.22\build\WixToolset.BalUtil.props'))" />
111
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.16\build\WixToolset.BootstrapperCore.Native.props'))" />
112
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
113
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
114
</Target>
115
</Project>