@joebigelow / wix-1 / commits / 9010bd82

WIXFEAT:6164 Update BAL_INFO_PACKAGE with bal specific data.

Sean Hall committed May 15, 2020 at 17:18 UTC 9010bd828e70e91523ed74733cc371eec09f58bb
13 files changed +177 -32
src/WixToolset.Mba.Core/BundleInfo.cs
+3 -5
@@ -20,10 +20,11 @@ namespace WixToolset.Mba.Core
20 this.Packages = new Dictionary<string, IPackageInfo>();
21 }
22
23 - public void AddRelatedBundleAsPackage(DetectRelatedBundleEventArgs e)
23 + public IPackageInfo AddRelatedBundleAsPackage(DetectRelatedBundleEventArgs e)
24 {
25 var package = PackageInfo.GetRelatedBundleAsPackage(e.ProductCode, e.RelationType, e.PerMachine, e.Version);
26 this.Packages.Add(package.Id, package);
27 + return package;
28 }
29
30 public static IBundleInfo ParseBundleFromStream(Stream stream)
@@ -56,10 +57,7 @@ namespace WixToolset.Mba.Core
57
58 bundle.LogVariable = BootstrapperApplicationData.GetAttribute(bundleNode, "LogPathVariable");
59
59 - foreach (var package in PackageInfo.ParsePackagesFromXml(root))
60 - {
61 - bundle.Packages.Add(package.Id, package);
62 - }
60 + bundle.Packages = PackageInfo.ParsePackagesFromXml(root);
61
62 return bundle;
63 }
src/WixToolset.Mba.Core/IBundleInfo.cs
+1 -1
@@ -11,6 +11,6 @@ namespace WixToolset.Mba.Core
11 IDictionary<string, IPackageInfo> Packages { get; }
12 bool PerMachine { get; }
13
14 - void AddRelatedBundleAsPackage(DetectRelatedBundleEventArgs e);
14 + IPackageInfo AddRelatedBundleAsPackage(DetectRelatedBundleEventArgs e);
15 }
16 }
\ No newline at end of file
src/WixToolset.Mba.Core/IPackageInfo.cs
+5 -1
@@ -5,12 +5,16 @@ namespace WixToolset.Mba.Core
5 public interface IPackageInfo
6 {
7 CacheType CacheType { get; }
8 + object CustomData { get; set; }
9 string Description { get; }
9 - bool DisplayInternalUI { get; }
10 + string DisplayInternalUICondition { get; }
11 string DisplayName { get; }
12 string Id { get; }
13 string InstallCondition { get; }
14 bool Permanent { get; }
15 + bool PrereqPackage { get; }
16 + string PrereqLicenseFile { get; }
17 + string PrereqLicenseUrl { get; }
18 string ProductCode { get; }
19 PackageType Type { get; }
20 string UpgradeCode { get; }
src/WixToolset.Mba.Core/PackageInfo.cs
+57 -7
@@ -34,17 +34,22 @@ namespace WixToolset.Mba.Core
34 public PackageType Type { get; internal set; }
35 public bool Permanent { get; internal set; }
36 public bool Vital { get; internal set; }
37 - public bool DisplayInternalUI { get; internal set; }
37 + public string DisplayInternalUICondition { get; internal set; }
38 public string ProductCode { get; internal set; }
39 public string UpgradeCode { get; internal set; }
40 public string Version { get; internal set; }
41 public string InstallCondition { get; internal set; }
42 public CacheType CacheType { get; internal set; }
43 + public bool PrereqPackage { get; internal set; }
44 + public string PrereqLicenseFile { get; internal set; }
45 + public string PrereqLicenseUrl { get; internal set; }
46 + public object CustomData { get; set; }
47
48 internal PackageInfo() { }
49
46 - public static IEnumerable<IPackageInfo> ParsePackagesFromXml(XPathNavigator root)
50 + public static IDictionary<string, IPackageInfo> ParsePackagesFromXml(XPathNavigator root)
51 {
52 + var packagesById = new Dictionary<string, IPackageInfo>();
53 XmlNamespaceManager namespaceManager = new XmlNamespaceManager(root.NameTable);
54 namespaceManager.AddNamespace("p", BootstrapperApplicationData.XMLNamespace);
55 XPathNodeIterator nodes = root.Select("/p:BootstrapperApplicationData/p:WixPackageProperties", namespaceManager);
@@ -85,9 +90,6 @@ namespace WixToolset.Mba.Core
90 }
91 package.Vital = vital.Value;
92
88 - bool? displayInternalUI = BootstrapperApplicationData.GetYesNoAttribute(node, "DisplayInternalUI");
89 - package.DisplayInternalUI = displayInternalUI.HasValue && displayInternalUI.Value;
90 -
93 package.ProductCode = BootstrapperApplicationData.GetAttribute(node, "ProductCode");
94
95 package.UpgradeCode = BootstrapperApplicationData.GetAttribute(node, "UpgradeCode");
@@ -96,8 +98,11 @@ namespace WixToolset.Mba.Core
98
99 package.InstallCondition = BootstrapperApplicationData.GetAttribute(node, "InstallCondition");
100
99 - yield return package;
101 + packagesById.Add(package.Id, package);
102 }
103 +
104 + ParseBalPackageInfoFromXml(root, namespaceManager, packagesById);
105 + return packagesById;
106 }
107
108 public static CacheType? GetCacheTypeAttribute(XPathNavigator node, string attributeName)
@@ -154,7 +159,7 @@ namespace WixToolset.Mba.Core
159 }
160 }
161
157 - public static PackageInfo GetRelatedBundleAsPackage(string id, RelationType relationType, bool perMachine, Version version)
162 + public static IPackageInfo GetRelatedBundleAsPackage(string id, RelationType relationType, bool perMachine, Version version)
163 {
164 PackageInfo package = new PackageInfo();
165 package.Id = id;
@@ -177,5 +182,50 @@ namespace WixToolset.Mba.Core
182
183 return package;
184 }
185 +
186 + internal static void ParseBalPackageInfoFromXml(XPathNavigator root, XmlNamespaceManager namespaceManager, Dictionary<string, IPackageInfo> packagesById)
187 + {
188 + XPathNodeIterator nodes = root.Select("/p:BootstrapperApplicationData/p:WixBalPackageInfo", namespaceManager);
189 +
190 + foreach (XPathNavigator node in nodes)
191 + {
192 + string id = BootstrapperApplicationData.GetAttribute(node, "PackageId");
193 + if (id == null)
194 + {
195 + throw new Exception("Failed to get package identifier for WixBalPackageInfo.");
196 + }
197 +
198 + if (!packagesById.TryGetValue(id, out var ipackage))
199 + {
200 + throw new Exception(string.Format("Failed to find package specified in WixBalPackageInfo: {0}", id));
201 + }
202 +
203 + var package = (PackageInfo)ipackage;
204 +
205 + package.DisplayInternalUICondition = BootstrapperApplicationData.GetAttribute(node, "DisplayInternalUICondition");
206 + }
207 +
208 + nodes = root.Select("/p:BootstrapperApplicationData/p:WixMbaPrereqInformation", namespaceManager);
209 +
210 + foreach (XPathNavigator node in nodes)
211 + {
212 + string id = BootstrapperApplicationData.GetAttribute(node, "PackageId");
213 + if (id == null)
214 + {
215 + throw new Exception("Failed to get package identifier for WixMbaPrereqInformation.");
216 + }
217 +
218 + if (!packagesById.TryGetValue(id, out var ipackage))
219 + {
220 + throw new Exception(string.Format("Failed to find package specified in WixMbaPrereqInformation: {0}", id));
221 + }
222 +
223 + var package = (PackageInfo)ipackage;
224 +
225 + package.PrereqPackage = true;
226 + package.PrereqLicenseFile = BootstrapperApplicationData.GetAttribute(node, "LicenseFile");
227 + package.PrereqLicenseUrl = BootstrapperApplicationData.GetAttribute(node, "LicenseUrl");
228 + }
229 + }
230 }
231 }
src/balutil/balinfo.cpp
+92 -7
@@ -7,6 +7,10 @@ static HRESULT ParsePackagesFromXml(
7 __in BAL_INFO_PACKAGES* pPackages,
8 __in IXMLDOMDocument* pixdManifest
9 );
10 +static HRESULT ParseBalPackageInfoFromXml(
11 + __in BAL_INFO_PACKAGES* pPackages,
12 + __in IXMLDOMDocument* pixdManifest
13 + );
14
15
16 DAPI_(HRESULT) BalInfoParseFromXml(
@@ -44,6 +48,9 @@ DAPI_(HRESULT) BalInfoParseFromXml(
48 hr = ParsePackagesFromXml(&pBundle->packages, pixdManifest);
49 BalExitOnFailure(hr, "Failed to parse package information from bootstrapper application data.");
50
51 + hr = ParseBalPackageInfoFromXml(&pBundle->packages, pixdManifest);
52 + BalExitOnFailure(hr, "Failed to parse bal package information from bootstrapper application data.");
53 +
54 LExit:
55 ReleaseObject(pNode);
56
@@ -55,7 +62,8 @@ DAPI_(HRESULT) BalInfoAddRelatedBundleAsPackage(
62 __in BAL_INFO_PACKAGES* pPackages,
63 __in LPCWSTR wzId,
64 __in BOOTSTRAPPER_RELATION_TYPE relationType,
58 - __in BOOL /*fPerMachine*/
65 + __in BOOL /*fPerMachine*/,
66 + __out_opt BAL_INFO_PACKAGE** ppPackage
67 )
68 {
69 HRESULT hr = S_OK;
@@ -104,6 +112,11 @@ DAPI_(HRESULT) BalInfoAddRelatedBundleAsPackage(
112
113 // TODO: try to look up the DisplayName and Description in Add/Remove Programs with the wzId.
114
115 + if (ppPackage)
116 + {
117 + *ppPackage = pPackage;
118 + }
119 +
120 LExit:
121 return hr;
122 }
@@ -139,10 +152,13 @@ DAPI_(void) BalInfoUninitialize(
152 ReleaseStr(pBundle->packages.rgPackages[i].sczDisplayName);
153 ReleaseStr(pBundle->packages.rgPackages[i].sczDescription);
154 ReleaseStr(pBundle->packages.rgPackages[i].sczId);
155 + ReleaseStr(pBundle->packages.rgPackages[i].sczDisplayInternalUICondition);
156 ReleaseStr(pBundle->packages.rgPackages[i].sczProductCode);
157 ReleaseStr(pBundle->packages.rgPackages[i].sczUpgradeCode);
158 ReleaseStr(pBundle->packages.rgPackages[i].sczVersion);
159 ReleaseStr(pBundle->packages.rgPackages[i].sczInstallCondition);
160 + ReleaseStr(pBundle->packages.rgPackages[i].sczPrereqLicenseFile);
161 + ReleaseStr(pBundle->packages.rgPackages[i].sczPrereqLicenseUrl);
162 }
163
164 ReleaseMem(pBundle->packages.rgPackages);
@@ -218,12 +234,6 @@ static HRESULT ParsePackagesFromXml(
234 hr = XmlGetYesNoAttribute(pNode, L"Vital", &prgPackages[iPackage].fVital);
235 ExitOnFailure(hr, "Failed to get vital setting for package.");
236
221 - hr = XmlGetYesNoAttribute(pNode, L"DisplayInternalUI", &prgPackages[iPackage].fDisplayInternalUI);
222 - if (E_NOTFOUND != hr)
223 - {
224 - ExitOnFailure(hr, "Failed to get DisplayInternalUI setting for package.");
225 - }
226 -
237 hr = XmlGetAttributeEx(pNode, L"ProductCode", &prgPackages[iPackage].sczProductCode);
238 if (E_NOTFOUND != hr)
239 {
@@ -286,3 +296,78 @@ LExit:
296
297 return hr;
298 }
299 +
300 +
301 +static HRESULT ParseBalPackageInfoFromXml(
302 + __in BAL_INFO_PACKAGES* pPackages,
303 + __in IXMLDOMDocument* pixdManifest
304 + )
305 +{
306 + HRESULT hr = S_OK;
307 + IXMLDOMNodeList* pNodeList = NULL;
308 + IXMLDOMNode* pNode = NULL;
309 + LPWSTR scz = NULL;
310 + BAL_INFO_PACKAGE* pPackage = NULL;
311 +
312 + hr = XmlSelectNodes(pixdManifest, L"/BootstrapperApplicationData/WixBalPackageInfo", &pNodeList);
313 + ExitOnFailure(hr, "Failed to select all packages.");
314 +
315 + while (S_OK == (hr = XmlNextElement(pNodeList, &pNode, NULL)))
316 + {
317 + hr = XmlGetAttributeEx(pNode, L"PackageId", &scz);
318 + ExitOnFailure(hr, "Failed to get package identifier for WixBalPackageInfo.");
319 +
320 + hr = BalInfoFindPackageById(pPackages, scz, &pPackage);
321 + ExitOnFailure(hr, "Failed to find package specified in WixBalPackageInfo: %ls", scz);
322 +
323 + hr = XmlGetAttributeEx(pNode, L"DisplayInternalUICondition", &pPackage->sczDisplayInternalUICondition);
324 + if (E_NOTFOUND != hr)
325 + {
326 + ExitOnFailure(hr, "Failed to get DisplayInternalUICondition setting for package.");
327 + }
328 +
329 + ReleaseNullObject(pNode);
330 + }
331 + ExitOnFailure(hr, "Failed to parse all WixBalPackageInfo elements.");
332 +
333 + hr = XmlSelectNodes(pixdManifest, L"/BootstrapperApplicationData/WixMbaPrereqInformation", &pNodeList);
334 + ExitOnFailure(hr, "Failed to select all packages.");
335 +
336 + while (S_OK == (hr = XmlNextElement(pNodeList, &pNode, NULL)))
337 + {
338 + hr = XmlGetAttributeEx(pNode, L"PackageId", &scz);
339 + ExitOnFailure(hr, "Failed to get package identifier for WixMbaPrereqInformation.");
340 +
341 + hr = BalInfoFindPackageById(pPackages, scz, &pPackage);
342 + ExitOnFailure(hr, "Failed to find package specified in WixMbaPrereqInformation: %ls", scz);
343 +
344 + pPackage->fPrereqPackage = TRUE;
345 +
346 + hr = XmlGetAttributeEx(pNode, L"LicenseFile", &pPackage->sczPrereqLicenseFile);
347 + if (E_NOTFOUND != hr)
348 + {
349 + ExitOnFailure(hr, "Failed to get LicenseFile setting for prereq package.");
350 + }
351 +
352 + hr = XmlGetAttributeEx(pNode, L"LicenseUrl", &pPackage->sczPrereqLicenseUrl);
353 + if (E_NOTFOUND != hr)
354 + {
355 + ExitOnFailure(hr, "Failed to get LicenseUrl setting for prereq package.");
356 + }
357 +
358 + ReleaseNullObject(pNode);
359 + }
360 + ExitOnFailure(hr, "Failed to parse all WixMbaPrereqInformation elements.");
361 +
362 + if (S_FALSE == hr)
363 + {
364 + hr = S_OK;
365 + }
366 +
367 +LExit:
368 + ReleaseStr(scz);
369 + ReleaseObject(pNode);
370 + ReleaseObject(pNodeList);
371 +
372 + return hr;
373 +}
src/balutil/balutil.vcxproj
+2 -2
@@ -3,7 +3,7 @@
3
4 <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
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.22\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.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
8 <ItemGroup Label="ProjectConfigurations">
9 <ProjectConfiguration Include="Debug|Win32">
@@ -91,7 +91,7 @@
91 <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>
92 </PropertyGroup>
93 <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'))" />
94 - <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.props'))" />
94 + <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'))" />
95 <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'))" />
96 </Target>
97 </Project>
src/balutil/inc/balinfo.h
+7 -2
@@ -34,12 +34,16 @@ typedef struct _BAL_INFO_PACKAGE
34 BAL_INFO_PACKAGE_TYPE type;
35 BOOL fPermanent;
36 BOOL fVital;
37 - BOOL fDisplayInternalUI;
37 + LPWSTR sczDisplayInternalUICondition;
38 LPWSTR sczProductCode;
39 LPWSTR sczUpgradeCode;
40 LPWSTR sczVersion;
41 LPWSTR sczInstallCondition;
42 BAL_INFO_CACHE_TYPE cacheType;
43 + BOOL fPrereqPackage;
44 + LPWSTR sczPrereqLicenseFile;
45 + LPWSTR sczPrereqLicenseUrl;
46 + LPVOID pvCustomData;
47 } BAL_INFO_PACKAGE;
48
49
@@ -78,7 +82,8 @@ DAPI_(HRESULT) BalInfoAddRelatedBundleAsPackage(
82 __in BAL_INFO_PACKAGES* pPackages,
83 __in LPCWSTR wzId,
84 __in BOOTSTRAPPER_RELATION_TYPE relationType,
81 - __in BOOL fPerMachine
85 + __in BOOL fPerMachine,
86 + __out_opt BAL_INFO_PACKAGE** ppPackage
87 );
88
89
src/balutil/inc/balutil.h
+3
@@ -11,7 +11,10 @@ extern "C" {
11
12 #define BalExitOnFailure(x, f, ...) if (FAILED(x)) { BalLogError(x, f, __VA_ARGS__); ExitTrace(x, f, __VA_ARGS__); goto LExit; }
13 #define BalExitOnRootFailure(x, f, ...) if (FAILED(x)) { BalLogError(x, f, __VA_ARGS__); Dutil_RootFailure(__FILE__, __LINE__, x); ExitTrace(x, f, __VA_ARGS__); goto LExit; }
14 +#define BalExitOnLastError(x, f, ...) { x = ::GetLastError(); x = HRESULT_FROM_WIN32(x); if (FAILED(x)) { BalLogError(x, f, __VA_ARGS__); ExitTrace(x, f, __VA_ARGS__); goto LExit; } }
15 +#define BalExitOnNull(p, x, e, f, ...) if (NULL == p) { x = e; BalLogError(x, f, __VA_ARGS__); ExitTrace(x, f, __VA_ARGS__); goto LExit; }
16 #define BalExitOnNullWithLastError(p, x, f, ...) if (NULL == p) { DWORD Dutil_er = ::GetLastError(); x = HRESULT_FROM_WIN32(Dutil_er); if (!FAILED(x)) { x = E_FAIL; } BalLogError(x, f, __VA_ARGS__); ExitTrace(x, f, __VA_ARGS__); goto LExit; }
17 +#define BalExitWithLastError(x, f, ...) { DWORD Dutil_er = ::GetLastError(); x = HRESULT_FROM_WIN32(Dutil_er); if (!FAILED(x)) { x = E_FAIL; } BalLogError(x, f, __VA_ARGS__); ExitTrace(x, f, __VA_ARGS__); goto LExit; }
18
19 #ifndef FACILITY_WIX
20 #define FACILITY_WIX 500
src/balutil/packages.config
+1 -1
@@ -2,5 +2,5 @@
2 <packages>
3 <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4 <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5 - <package id="WixToolset.DUtil" version="4.0.22" targetFramework="native" />
5 + <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
6 </packages>
\ No newline at end of file
src/bextutil/bextutil.vcxproj
+2 -2
@@ -3,7 +3,7 @@
3
4 <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
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.22\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.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
8 <ItemGroup Label="ProjectConfigurations">
9 <ProjectConfiguration Include="Debug|Win32">
@@ -80,7 +80,7 @@
80 <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>
81 </PropertyGroup>
82 <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'))" />
83 - <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.props'))" />
83 + <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'))" />
84 <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'))" />
85 </Target>
86 </Project>
src/bextutil/packages.config
+1 -1
@@ -2,5 +2,5 @@
2 <packages>
3 <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4 <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5 - <package id="WixToolset.DUtil" version="4.0.22" targetFramework="native" />
5 + <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
6 </packages>
\ No newline at end of file
src/mbanative/mbanative.vcxproj
+2 -2
@@ -3,7 +3,7 @@
3
4 <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
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.22\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.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
8 <ItemGroup Label="ProjectConfigurations">
9 <ProjectConfiguration Include="Debug|Win32">
@@ -70,7 +70,7 @@
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.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.22\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.22\build\WixToolset.DUtil.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>
src/mbanative/packages.config
+1 -1
@@ -2,5 +2,5 @@
2 <packages>
3 <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" />
4 <package id="WixToolset.BootstrapperCore.Native" version="4.0.16" targetFramework="native" />
5 - <package id="WixToolset.DUtil" version="4.0.22" targetFramework="native" />
5 + <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
6 </packages>
\ No newline at end of file