Integrate patch related changes in Burn headers.
Sean Hall committed
Feb 22, 2021 at 20:25 UTC
022beff26b46c7808eefacfebccfc1fcb5aa5256
21 files changed
+271
-158
appveyor.cmd
+1
-1
@@ -19,7 +19,7 @@ dotnet test -c %_C% --no-build src\test\WixToolsetTest.Mba.Core\WixToolsetTest.M
19
20
msbuild -t:Pack -p:Configuration=%_C% src\balutil\balutil.vcxproj || exit /b
21
msbuild -t:Pack -p:Configuration=%_C% src\bextutil\bextutil.vcxproj || exit /b
22
-msbuild -t:Pack -p:Configuration=%_C% src\WixToolset.Mba.Core\WixToolset.Mba.Core.csproj || exit /b
22
+msbuild -t:Pack -p:Configuration=%_C% -p:NoBuild=true src\WixToolset.Mba.Core\WixToolset.Mba.Core.csproj || exit /b
23
24
@popd
25
@endlocal
\ No newline at end of file
src/WixToolset.Mba.Core/BootstrapperApplication.cs
+42
-18
@@ -68,7 +68,7 @@ namespace WixToolset.Mba.Core
68
public event EventHandler<DetectRelatedMsiPackageEventArgs> DetectRelatedMsiPackage;
69
70
/// <inheritdoc/>
71
- public event EventHandler<DetectTargetMsiPackageEventArgs> DetectTargetMsiPackage;
71
+ public event EventHandler<DetectPatchTargetEventArgs> DetectPatchTarget;
72
73
/// <inheritdoc/>
74
public event EventHandler<DetectMsiFeatureEventArgs> DetectMsiFeature;
@@ -89,7 +89,7 @@ namespace WixToolset.Mba.Core
89
public event EventHandler<PlanPackageBeginEventArgs> PlanPackageBegin;
90
91
/// <inheritdoc/>
92
- public event EventHandler<PlanTargetMsiPackageEventArgs> PlanTargetMsiPackage;
92
+ public event EventHandler<PlanPatchTargetEventArgs> PlanPatchTarget;
93
94
/// <inheritdoc/>
95
public event EventHandler<PlanMsiFeatureEventArgs> PlanMsiFeature;
@@ -100,6 +100,9 @@ namespace WixToolset.Mba.Core
100
/// <inheritdoc/>
101
public event EventHandler<PlanPackageCompleteEventArgs> PlanPackageComplete;
102
103
+ /// <inheritdoc/>
104
+ public event EventHandler<PlannedPackageEventArgs> PlannedPackage;
105
+
106
/// <inheritdoc/>
107
public event EventHandler<PlanCompleteEventArgs> PlanComplete;
108
@@ -392,12 +395,12 @@ namespace WixToolset.Mba.Core
395
}
396
397
/// <summary>
395
- /// Called by the engine, raises the <see cref="DetectTargetMsiPackage"/> event.
398
+ /// Called by the engine, raises the <see cref="DetectPatchTarget"/> event.
399
/// </summary>
400
/// <param name="args">Additional arguments for this event.</param>
398
- protected virtual void OnDetectTargetMsiPackage(DetectTargetMsiPackageEventArgs args)
401
+ protected virtual void OnDetectPatchTarget(DetectPatchTargetEventArgs args)
402
{
400
- EventHandler<DetectTargetMsiPackageEventArgs> handler = this.DetectTargetMsiPackage;
403
+ EventHandler<DetectPatchTargetEventArgs> handler = this.DetectPatchTarget;
404
if (null != handler)
405
{
406
handler(this, args);
@@ -483,12 +486,12 @@ namespace WixToolset.Mba.Core
486
}
487
488
/// <summary>
486
- /// Called by the engine, raises the <see cref="PlanTargetMsiPackage"/> event.
489
+ /// Called by the engine, raises the <see cref="PlanPatchTarget"/> event.
490
/// </summary>
491
/// <param name="args">Additional arguments for this event.</param>
489
- protected virtual void OnPlanTargetMsiPackage(PlanTargetMsiPackageEventArgs args)
492
+ protected virtual void OnPlanPatchTarget(PlanPatchTargetEventArgs args)
493
{
491
- EventHandler<PlanTargetMsiPackageEventArgs> handler = this.PlanTargetMsiPackage;
494
+ EventHandler<PlanPatchTargetEventArgs> handler = this.PlanPatchTarget;
495
if (null != handler)
496
{
497
handler(this, args);
@@ -534,6 +537,19 @@ namespace WixToolset.Mba.Core
537
}
538
}
539
540
+ /// <summary>
541
+ /// Called by the engine, raises the <see cref="PlannedPackage"/> event.
542
+ /// </summary>
543
+ /// <param name="args">Additional arguments for this event.</param>
544
+ protected virtual void OnPlannedPackage(PlannedPackageEventArgs args)
545
+ {
546
+ EventHandler<PlannedPackageEventArgs> handler = this.PlannedPackage;
547
+ if (null != handler)
548
+ {
549
+ handler(this, args);
550
+ }
551
+ }
552
+
553
/// <summary>
554
/// Called by the engine, raises the <see cref="PlanComplete"/> event.
555
/// </summary>
@@ -1170,10 +1186,10 @@ namespace WixToolset.Mba.Core
1186
return args.HResult;
1187
}
1188
1173
- int IBootstrapperApplication.OnDetectTargetMsiPackage(string wzPackageId, string wzProductCode, PackageState patchState, ref bool fCancel)
1189
+ int IBootstrapperApplication.OnDetectPatchTarget(string wzPackageId, string wzProductCode, PackageState patchState, ref bool fCancel)
1190
{
1175
- DetectTargetMsiPackageEventArgs args = new DetectTargetMsiPackageEventArgs(wzPackageId, wzProductCode, patchState, fCancel);
1176
- this.OnDetectTargetMsiPackage(args);
1191
+ DetectPatchTargetEventArgs args = new DetectPatchTargetEventArgs(wzPackageId, wzProductCode, patchState, fCancel);
1192
+ this.OnDetectPatchTarget(args);
1193
1194
fCancel = args.Cancel;
1195
return args.HResult;
@@ -1223,9 +1239,9 @@ namespace WixToolset.Mba.Core
1239
return args.HResult;
1240
}
1241
1226
- int IBootstrapperApplication.OnPlanPackageBegin(string wzPackageId, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel)
1242
+ int IBootstrapperApplication.OnPlanPackageBegin(string wzPackageId, PackageState state, bool fInstallCondition, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel)
1243
{
1228
- PlanPackageBeginEventArgs args = new PlanPackageBeginEventArgs(wzPackageId, recommendedState, pRequestedState, fCancel);
1244
+ PlanPackageBeginEventArgs args = new PlanPackageBeginEventArgs(wzPackageId, state, fInstallCondition, recommendedState, pRequestedState, fCancel);
1245
this.OnPlanPackageBegin(args);
1246
1247
pRequestedState = args.State;
@@ -1233,10 +1249,10 @@ namespace WixToolset.Mba.Core
1249
return args.HResult;
1250
}
1251
1236
- int IBootstrapperApplication.OnPlanTargetMsiPackage(string wzPackageId, string wzProductCode, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel)
1252
+ int IBootstrapperApplication.OnPlanPatchTarget(string wzPackageId, string wzProductCode, RequestState recommendedState, ref RequestState pRequestedState, ref bool fCancel)
1253
{
1238
- PlanTargetMsiPackageEventArgs args = new PlanTargetMsiPackageEventArgs(wzPackageId, wzProductCode, recommendedState, pRequestedState, fCancel);
1239
- this.OnPlanTargetMsiPackage(args);
1254
+ PlanPatchTargetEventArgs args = new PlanPatchTargetEventArgs(wzPackageId, wzProductCode, recommendedState, pRequestedState, fCancel);
1255
+ this.OnPlanPatchTarget(args);
1256
1257
pRequestedState = args.State;
1258
fCancel = args.Cancel;
@@ -1265,14 +1281,22 @@ namespace WixToolset.Mba.Core
1281
return args.HResult;
1282
}
1283
1268
- int IBootstrapperApplication.OnPlanPackageComplete(string wzPackageId, int hrStatus, PackageState state, RequestState requested, ActionState execute, ActionState rollback)
1284
+ int IBootstrapperApplication.OnPlanPackageComplete(string wzPackageId, int hrStatus, RequestState requested)
1285
{
1270
- var args = new PlanPackageCompleteEventArgs(wzPackageId, hrStatus, state, requested, execute, rollback);
1286
+ var args = new PlanPackageCompleteEventArgs(wzPackageId, hrStatus, requested);
1287
this.OnPlanPackageComplete(args);
1288
1289
return args.HResult;
1290
}
1291
1292
+ int IBootstrapperApplication.OnPlannedPackage(string wzPackageId, ActionState execute, ActionState rollback)
1293
+ {
1294
+ var args = new PlannedPackageEventArgs(wzPackageId, execute, rollback);
1295
+ this.OnPlannedPackage(args);
1296
+
1297
+ return args.HResult;
1298
+ }
1299
+
1300
int IBootstrapperApplication.OnPlanComplete(int hrStatus)
1301
{
1302
PlanCompleteEventArgs args = new PlanCompleteEventArgs(hrStatus);
src/WixToolset.Mba.Core/EventArgs.cs
+77
-49
@@ -547,18 +547,18 @@ namespace WixToolset.Mba.Core
547
}
548
549
/// <summary>
550
- /// Additional arguments used when a target MSI package has been detected.
550
+ /// Event arguments for <see cref="IDefaultBootstrapperApplication.DetectPatchTarget"/>
551
/// </summary>
552
- public class DetectTargetMsiPackageEventArgs : CancellableHResultEventArgs
552
+ public class DetectPatchTargetEventArgs : CancellableHResultEventArgs
553
{
554
/// <summary>
555
- /// Creates a new instance of the <see cref="DetectMsiFeatureEventArgs"/> class.
555
+ ///
556
/// </summary>
557
- /// <param name="packageId">Detected package identifier.</param>
558
- /// <param name="productCode">Detected product code.</param>
559
- /// <param name="state">Package state detected.</param>
560
- /// <param name="cancelRecommendation">The recommendation from the engine.</param>
561
- public DetectTargetMsiPackageEventArgs(string packageId, string productCode, PackageState state, bool cancelRecommendation)
557
+ /// <param name="packageId"></param>
558
+ /// <param name="productCode"></param>
559
+ /// <param name="state"></param>
560
+ /// <param name="cancelRecommendation"></param>
561
+ public DetectPatchTargetEventArgs(string packageId, string productCode, PackageState state, bool cancelRecommendation)
562
: base(cancelRecommendation)
563
{
564
this.PackageId = packageId;
@@ -567,17 +567,17 @@ namespace WixToolset.Mba.Core
567
}
568
569
/// <summary>
570
- /// Gets the identity of the target's package detected.
570
+ /// Gets the identity of the patch's package.
571
/// </summary>
572
public string PackageId { get; private set; }
573
574
/// <summary>
575
- /// Gets the product code of the target MSI detected.
575
+ /// Gets the product code of the target.
576
/// </summary>
577
public string ProductCode { get; private set; }
578
579
/// <summary>
580
- /// Gets the detected patch package state.
580
+ /// Gets the detected patch state for the target.
581
/// </summary>
582
public PackageState State { get; private set; }
583
}
@@ -732,22 +732,26 @@ namespace WixToolset.Mba.Core
732
}
733
734
/// <summary>
735
- /// Additional arguments used when the engine has begun planning the installation of a specific package.
735
+ /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanPackageBegin"/>
736
/// </summary>
737
[Serializable]
738
public class PlanPackageBeginEventArgs : CancellableHResultEventArgs
739
{
740
/// <summary>
741
- /// Creates a new instance of the <see cref="PlanPackageBeginEventArgs"/> class.
741
+ ///
742
/// </summary>
743
- /// <param name="packageId">The identity of the package to plan for.</param>
744
- /// <param name="recommendedState">The recommended requested state for the package.</param>
745
- /// <param name="state">The requested state for the package.</param>
746
- /// <param name="cancelRecommendation">The recommendation from the engine.</param>
747
- public PlanPackageBeginEventArgs(string packageId, RequestState recommendedState, RequestState state, bool cancelRecommendation)
743
+ /// <param name="packageId"></param>
744
+ /// <param name="currentState"></param>
745
+ /// <param name="installCondition"></param>
746
+ /// <param name="recommendedState"></param>
747
+ /// <param name="state"></param>
748
+ /// <param name="cancelRecommendation"></param>
749
+ public PlanPackageBeginEventArgs(string packageId, PackageState currentState, bool installCondition, RequestState recommendedState, RequestState state, bool cancelRecommendation)
750
: base(cancelRecommendation)
751
{
752
this.PackageId = packageId;
753
+ this.CurrentState = currentState;
754
+ this.InstallCondition = installCondition;
755
this.RecommendedState = recommendedState;
756
this.State = state;
757
}
@@ -757,6 +761,16 @@ namespace WixToolset.Mba.Core
761
/// </summary>
762
public string PackageId { get; private set; }
763
764
+ /// <summary>
765
+ /// Gets the current state of the package.
766
+ /// </summary>
767
+ public PackageState CurrentState { get; private set; }
768
+
769
+ /// <summary>
770
+ /// Gets the evaluated result of the package's install condition.
771
+ /// </summary>
772
+ public bool InstallCondition { get; private set; }
773
+
774
/// <summary>
775
/// Gets the recommended requested state for the package.
776
/// </summary>
@@ -769,20 +783,20 @@ namespace WixToolset.Mba.Core
783
}
784
785
/// <summary>
772
- /// Additional arguments used when engine is about to plan a MSP applied to a target MSI package.
786
+ /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanPatchTarget"/>
787
/// </summary>
788
[Serializable]
775
- public class PlanTargetMsiPackageEventArgs : CancellableHResultEventArgs
789
+ public class PlanPatchTargetEventArgs : CancellableHResultEventArgs
790
{
791
/// <summary>
778
- /// Creates a new instance of the <see cref="PlanMsiFeatureEventArgs"/> class.
792
+ ///
793
/// </summary>
780
- /// <param name="packageId">Package identifier of the patch being planned.</param>
781
- /// <param name="productCode">Product code identifier being planned.</param>
782
- /// <param name="recommendedState">Recommended package state of the patch being planned.</param>
783
- /// <param name="state">Package state of the patch being planned.</param>
784
- /// <param name="cancelRecommendation">The recommendation from the engine.</param>
785
- public PlanTargetMsiPackageEventArgs(string packageId, string productCode, RequestState recommendedState, RequestState state, bool cancelRecommendation)
794
+ /// <param name="packageId"></param>
795
+ /// <param name="productCode"></param>
796
+ /// <param name="recommendedState"></param>
797
+ /// <param name="state"></param>
798
+ /// <param name="cancelRecommendation"></param>
799
+ public PlanPatchTargetEventArgs(string packageId, string productCode, RequestState recommendedState, RequestState state, bool cancelRecommendation)
800
: base(cancelRecommendation)
801
{
802
this.PackageId = packageId;
@@ -792,22 +806,22 @@ namespace WixToolset.Mba.Core
806
}
807
808
/// <summary>
795
- /// Gets the identity of the patch package to plan.
809
+ /// Gets the identity of the patch's package.
810
/// </summary>
811
public string PackageId { get; private set; }
812
813
/// <summary>
800
- /// Gets the identity of the patch's target MSI to plan.
814
+ /// Gets the product code of the target.
815
/// </summary>
816
public string ProductCode { get; private set; }
817
818
/// <summary>
805
- /// Gets the recommended state of the patch to use by planning.
819
+ /// Gets the recommended state of the patch to use by planning for the target.
820
/// </summary>
821
public RequestState RecommendedState { get; private set; }
822
823
/// <summary>
810
- /// Gets or sets the state of the patch to use by planning.
824
+ /// Gets or sets the state of the patch to use by planning for the target.
825
/// </summary>
826
public RequestState State { get; set; }
827
}
@@ -915,28 +929,22 @@ namespace WixToolset.Mba.Core
929
}
930
931
/// <summary>
918
- /// Additional arguments used when then engine has completed planning the installation of a specific package.
932
+ /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlanPackageComplete"/>
933
/// </summary>
934
[Serializable]
935
public class PlanPackageCompleteEventArgs : StatusEventArgs
936
{
937
/// <summary>
924
- /// Creates a new instance of the <see cref="PlanPackageCompleteEventArgs"/> class.
938
+ ///
939
/// </summary>
926
- /// <param name="packageId">The identity of the package planned for.</param>
927
- /// <param name="hrStatus">The return code of the operation.</param>
928
- /// <param name="state">The current state of the package.</param>
929
- /// <param name="requested">The requested state for the package</param>
930
- /// <param name="execute">The execution action to take.</param>
931
- /// <param name="rollback">The rollback action to take.</param>
932
- public PlanPackageCompleteEventArgs(string packageId, int hrStatus, PackageState state, RequestState requested, ActionState execute, ActionState rollback)
940
+ /// <param name="packageId"></param>
941
+ /// <param name="hrStatus"></param>
942
+ /// <param name="requested"></param>
943
+ public PlanPackageCompleteEventArgs(string packageId, int hrStatus, RequestState requested)
944
: base(hrStatus)
945
{
946
this.PackageId = packageId;
936
- this.State = state;
947
this.Requested = requested;
938
- this.Execute = execute;
939
- this.Rollback = rollback;
948
}
949
950
/// <summary>
@@ -945,22 +953,42 @@ namespace WixToolset.Mba.Core
953
public string PackageId { get; private set; }
954
955
/// <summary>
948
- /// Gets the current state of the package.
956
+ /// Gets the requested state for the package.
957
/// </summary>
950
- public PackageState State { get; private set; }
958
+ public RequestState Requested { get; private set; }
959
+ }
960
961
+ /// <summary>
962
+ /// Event arguments for <see cref="IDefaultBootstrapperApplication.PlannedPackage"/>
963
+ /// </summary>
964
+ [Serializable]
965
+ public class PlannedPackageEventArgs : HResultEventArgs
966
+ {
967
/// <summary>
953
- /// Gets the requested state for the package.
968
+ ///
969
/// </summary>
955
- public RequestState Requested { get; private set; }
970
+ /// <param name="packageId"></param>
971
+ /// <param name="execute"></param>
972
+ /// <param name="rollback"></param>
973
+ public PlannedPackageEventArgs(string packageId, ActionState execute, ActionState rollback)
974
+ {
975
+ this.PackageId = packageId;
976
+ this.Execute = execute;
977
+ this.Rollback = rollback;
978
+ }
979
+
980
+ /// <summary>
981
+ /// Gets the identity of the package planned for.
982
+ /// </summary>
983
+ public string PackageId { get; private set; }
984
985
/// <summary>
958
- /// Gets the execution action to take.
986
+ /// Gets the planned execution action.
987
/// </summary>
988
public ActionState Execute { get; private set; }
989
990
/// <summary>
963
- /// Gets the rollback action to take.
991
+ /// Gets the planned rollback action.
992
/// </summary>
993
public ActionState Rollback { get; private set; }
994
}
src/WixToolset.Mba.Core/IBootstrapperApplication.cs
+22
-9
@@ -194,7 +194,7 @@ namespace WixToolset.Mba.Core
194
);
195
196
/// <summary>
197
- /// See <see cref="IDefaultBootstrapperApplication.DetectTargetMsiPackage"/>.
197
+ /// See <see cref="IDefaultBootstrapperApplication.DetectPatchTarget"/>.
198
/// </summary>
199
/// <param name="wzPackageId"></param>
200
/// <param name="wzProductCode"></param>
@@ -203,7 +203,7 @@ namespace WixToolset.Mba.Core
203
/// <returns></returns>
204
[PreserveSig]
205
[return: MarshalAs(UnmanagedType.I4)]
206
- int OnDetectTargetMsiPackage(
206
+ int OnDetectPatchTarget(
207
[MarshalAs(UnmanagedType.LPWStr)] string wzPackageId,
208
[MarshalAs(UnmanagedType.LPWStr)] string wzProductCode,
209
[MarshalAs(UnmanagedType.U4)] PackageState patchState,
@@ -289,6 +289,8 @@ namespace WixToolset.Mba.Core
289
/// See <see cref="IDefaultBootstrapperApplication.PlanPackageBegin"/>.
290
/// </summary>
291
/// <param name="wzPackageId"></param>
292
+ /// <param name="state"></param>
293
+ /// <param name="fInstallCondition"></param>
294
/// <param name="recommendedState"></param>
295
/// <param name="pRequestedState"></param>
296
/// <param name="fCancel"></param>
@@ -297,13 +299,15 @@ namespace WixToolset.Mba.Core
299
[return: MarshalAs(UnmanagedType.I4)]
300
int OnPlanPackageBegin(
301
[MarshalAs(UnmanagedType.LPWStr)] string wzPackageId,
302
+ [MarshalAs(UnmanagedType.U4)] PackageState state,
303
+ [MarshalAs(UnmanagedType.Bool)] bool fInstallCondition,
304
[MarshalAs(UnmanagedType.U4)] RequestState recommendedState,
305
[MarshalAs(UnmanagedType.U4)] ref RequestState pRequestedState,
306
[MarshalAs(UnmanagedType.Bool)] ref bool fCancel
307
);
308
309
/// <summary>
306
- /// See <see cref="IDefaultBootstrapperApplication.PlanTargetMsiPackage"/>.
310
+ /// See <see cref="IDefaultBootstrapperApplication.PlanPatchTarget"/>.
311
/// </summary>
312
/// <param name="wzPackageId"></param>
313
/// <param name="wzProductCode"></param>
@@ -313,7 +317,7 @@ namespace WixToolset.Mba.Core
317
/// <returns></returns>
318
[PreserveSig]
319
[return: MarshalAs(UnmanagedType.I4)]
316
- int OnPlanTargetMsiPackage(
320
+ int OnPlanPatchTarget(
321
[MarshalAs(UnmanagedType.LPWStr)] string wzPackageId,
322
[MarshalAs(UnmanagedType.LPWStr)] string wzProductCode,
323
[MarshalAs(UnmanagedType.U4)] RequestState recommendedState,
@@ -368,18 +372,27 @@ namespace WixToolset.Mba.Core
372
/// </summary>
373
/// <param name="wzPackageId"></param>
374
/// <param name="hrStatus"></param>
371
- /// <param name="state"></param>
375
/// <param name="requested"></param>
373
- /// <param name="execute"></param>
374
- /// <param name="rollback"></param>
376
/// <returns></returns>
377
[PreserveSig]
378
[return: MarshalAs(UnmanagedType.I4)]
379
int OnPlanPackageComplete(
380
[MarshalAs(UnmanagedType.LPWStr)] string wzPackageId,
381
int hrStatus,
381
- [MarshalAs(UnmanagedType.U4)] PackageState state,
382
- [MarshalAs(UnmanagedType.U4)] RequestState requested,
382
+ [MarshalAs(UnmanagedType.U4)] RequestState requested
383
+ );
384
+
385
+ /// <summary>
386
+ /// See <see cref="IDefaultBootstrapperApplication.PlannedPackage"/>.
387
+ /// </summary>
388
+ /// <param name="wzPackageId"></param>
389
+ /// <param name="execute"></param>
390
+ /// <param name="rollback"></param>
391
+ /// <returns></returns>
392
+ [PreserveSig]
393
+ [return: MarshalAs(UnmanagedType.I4)]
394
+ int OnPlannedPackage(
395
+ [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId,
396
[MarshalAs(UnmanagedType.U4)] ActionState execute,
397
[MarshalAs(UnmanagedType.U4)] ActionState rollback
398
);
src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs
+16
-11
@@ -114,6 +114,11 @@ namespace WixToolset.Mba.Core
114
/// </summary>
115
event EventHandler<DetectPackageCompleteEventArgs> DetectPackageComplete;
116
117
+ /// <summary>
118
+ /// Fired when the engine detects a target product for an MSP package.
119
+ /// </summary>
120
+ event EventHandler<DetectPatchTargetEventArgs> DetectPatchTarget;
121
+
122
/// <summary>
123
/// Fired when a related bundle has been detected for a bundle.
124
/// </summary>
@@ -124,11 +129,6 @@ namespace WixToolset.Mba.Core
129
/// </summary>
130
event EventHandler<DetectRelatedMsiPackageEventArgs> DetectRelatedMsiPackage;
131
127
- /// <summary>
128
- /// Fired when an MSP package detects a target MSI has been detected.
129
- /// </summary>
130
- event EventHandler<DetectTargetMsiPackageEventArgs> DetectTargetMsiPackage;
131
-
132
/// <summary>
133
/// Fired when the update detection has found a potential update candidate.
134
/// </summary>
@@ -229,6 +229,11 @@ namespace WixToolset.Mba.Core
229
/// </summary>
230
event EventHandler<PlanCompleteEventArgs> PlanComplete;
231
232
+ /// <summary>
233
+ /// Fired when the engine has completed planning a package.
234
+ /// </summary>
235
+ event EventHandler<PlannedPackageEventArgs> PlannedPackage;
236
+
237
/// <summary>
238
/// Fired when the engine is about to plan a feature in an MSI package.
239
/// </summary>
@@ -240,24 +245,24 @@ namespace WixToolset.Mba.Core
245
event EventHandler<PlanMsiPackageEventArgs> PlanMsiPackage;
246
247
/// <summary>
243
- /// Fired when the engine has begun planning the installation of a specific package.
248
+ /// Fired when the engine has begun getting the BA's input for planning a package.
249
/// </summary>
250
event EventHandler<PlanPackageBeginEventArgs> PlanPackageBegin;
251
252
/// <summary>
248
- /// Fired when the engine has completed planning the installation of a specific package.
253
+ /// Fired when the engine has completed getting the BA's input for planning a package.
254
/// </summary>
255
event EventHandler<PlanPackageCompleteEventArgs> PlanPackageComplete;
256
257
/// <summary>
253
- /// Fired when the engine has begun planning for a related bundle.
258
+ /// Fired when the engine is about to plan a target of an MSP package.
259
/// </summary>
255
- event EventHandler<PlanRelatedBundleEventArgs> PlanRelatedBundle;
260
+ event EventHandler<PlanPatchTargetEventArgs> PlanPatchTarget;
261
262
/// <summary>
258
- /// Fired when the engine is about to plan the target MSI of a MSP package.
263
+ /// Fired when the engine has begun planning for a related bundle.
264
/// </summary>
260
- event EventHandler<PlanTargetMsiPackageEventArgs> PlanTargetMsiPackage;
265
+ event EventHandler<PlanRelatedBundleEventArgs> PlanRelatedBundle;
266
267
/// <summary>
268
/// Fired when the engine has changed progress for the bundle installation.
src/balutil/balutil.vcxproj
+4
-4
@@ -2,8 +2,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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" />
7
8
<ItemGroup Label="ProjectConfigurations">
9
<ProjectConfiguration Include="Debug|ARM64">
@@ -98,8 +98,8 @@
98
<PropertyGroup>
99
<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>
100
</PropertyGroup>
101
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props'))" />
102
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props'))" />
101
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props'))" />
102
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props'))" />
103
<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'))" />
104
</Target>
105
</Project>
src/balutil/inc/BAFunctions.h
+3
-2
@@ -23,12 +23,12 @@ enum BA_FUNCTIONS_MESSAGE
23
BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDBUNDLE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTRELATEDBUNDLE,
24
BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGEBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTPACKAGEBEGIN,
25
BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDMSIPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTRELATEDMSIPACKAGE,
26
- BA_FUNCTIONS_MESSAGE_ONDETECTTARGETMSIPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTTARGETMSIPACKAGE,
26
+ BA_FUNCTIONS_MESSAGE_ONDETECTPATCHTARGET = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTPATCHTARGET,
27
BA_FUNCTIONS_MESSAGE_ONDETECTMSIFEATURE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTMSIFEATURE,
28
BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGECOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTPACKAGECOMPLETE,
29
BA_FUNCTIONS_MESSAGE_ONPLANRELATEDBUNDLE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANRELATEDBUNDLE,
30
BA_FUNCTIONS_MESSAGE_ONPLANPACKAGEBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANPACKAGEBEGIN,
31
- BA_FUNCTIONS_MESSAGE_ONPLANTARGETMSIPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANTARGETMSIPACKAGE,
31
+ BA_FUNCTIONS_MESSAGE_ONPLANPATCHTARGET = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANPATCHTARGET,
32
BA_FUNCTIONS_MESSAGE_ONPLANMSIFEATURE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANMSIFEATURE,
33
BA_FUNCTIONS_MESSAGE_ONPLANPACKAGECOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANPACKAGECOMPLETE,
34
BA_FUNCTIONS_MESSAGE_ONAPPLYBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONAPPLYBEGIN,
@@ -72,6 +72,7 @@ enum BA_FUNCTIONS_MESSAGE
72
BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE,
73
BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN,
74
BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE,
75
+ BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE,
76
77
BA_FUNCTIONS_MESSAGE_ONTHEMELOADED = 1024,
78
BA_FUNCTIONS_MESSAGE_WNDPROC,
src/balutil/inc/BalBaseBAFunctions.h
+12
-4
@@ -177,7 +177,7 @@ public: // IBootstrapperApplication
177
return S_OK;
178
}
179
180
- virtual STDMETHODIMP OnDetectTargetMsiPackage(
180
+ virtual STDMETHODIMP OnDetectPatchTarget(
181
__in_z LPCWSTR /*wzPackageId*/,
182
__in_z LPCWSTR /*wzProductCode*/,
183
__in BOOTSTRAPPER_PACKAGE_STATE /*patchState*/,
@@ -234,6 +234,8 @@ public: // IBootstrapperApplication
234
235
virtual STDMETHODIMP OnPlanPackageBegin(
236
__in_z LPCWSTR /*wzPackageId*/,
237
+ __in BOOTSTRAPPER_PACKAGE_STATE /*state*/,
238
+ __in BOOL /*fInstallCondition*/,
239
__in BOOTSTRAPPER_REQUEST_STATE /*recommendedState*/,
240
__inout BOOTSTRAPPER_REQUEST_STATE* /*pRequestState*/,
241
__inout BOOL* /*pfCancel*/
@@ -242,7 +244,7 @@ public: // IBootstrapperApplication
244
return S_OK;
245
}
246
245
- virtual STDMETHODIMP OnPlanTargetMsiPackage(
247
+ virtual STDMETHODIMP OnPlanPatchTarget(
248
__in_z LPCWSTR /*wzPackageId*/,
249
__in_z LPCWSTR /*wzProductCode*/,
250
__in BOOTSTRAPPER_REQUEST_STATE /*recommendedState*/,
@@ -280,8 +282,14 @@ public: // IBootstrapperApplication
282
virtual STDMETHODIMP OnPlanPackageComplete(
283
__in_z LPCWSTR /*wzPackageId*/,
284
__in HRESULT /*hrStatus*/,
283
- __in BOOTSTRAPPER_PACKAGE_STATE /*state*/,
284
- __in BOOTSTRAPPER_REQUEST_STATE /*requested*/,
285
+ __in BOOTSTRAPPER_REQUEST_STATE /*requested*/
286
+ )
287
+ {
288
+ return S_OK;
289
+ }
290
+
291
+ virtual STDMETHODIMP OnPlannedPackage(
292
+ __in_z LPCWSTR /*wzPackageId*/,
293
__in BOOTSTRAPPER_ACTION_STATE /*execute*/,
294
__in BOOTSTRAPPER_ACTION_STATE /*rollback*/
295
)
src/balutil/inc/BalBaseBAFunctionsProc.h
+3
-2
@@ -58,12 +58,12 @@ static HRESULT WINAPI BalBaseBAFunctionsProc(
58
case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDBUNDLE:
59
case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGEBEGIN:
60
case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDMSIPACKAGE:
61
- case BA_FUNCTIONS_MESSAGE_ONDETECTTARGETMSIPACKAGE:
61
+ case BA_FUNCTIONS_MESSAGE_ONDETECTPATCHTARGET:
62
case BA_FUNCTIONS_MESSAGE_ONDETECTMSIFEATURE:
63
case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGECOMPLETE:
64
case BA_FUNCTIONS_MESSAGE_ONPLANRELATEDBUNDLE:
65
case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGEBEGIN:
66
- case BA_FUNCTIONS_MESSAGE_ONPLANTARGETMSIPACKAGE:
66
+ case BA_FUNCTIONS_MESSAGE_ONPLANPATCHTARGET:
67
case BA_FUNCTIONS_MESSAGE_ONPLANMSIFEATURE:
68
case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGECOMPLETE:
69
case BA_FUNCTIONS_MESSAGE_ONAPPLYBEGIN:
@@ -107,6 +107,7 @@ static HRESULT WINAPI BalBaseBAFunctionsProc(
107
case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE:
108
case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN:
109
case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
110
+ case BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE:
111
hr = BalBaseBootstrapperApplicationProc((BOOTSTRAPPER_APPLICATION_MESSAGE)message, pvArgs, pvResults, pvContext);
112
break;
113
case BA_FUNCTIONS_MESSAGE_ONTHEMELOADED:
src/balutil/inc/BalBaseBootstrapperApplication.h
+12
-4
@@ -181,7 +181,7 @@ public: // IBootstrapperApplication
181
return S_OK;
182
}
183
184
- virtual STDMETHODIMP OnDetectTargetMsiPackage(
184
+ virtual STDMETHODIMP OnDetectPatchTarget(
185
__in_z LPCWSTR /*wzPackageId*/,
186
__in_z LPCWSTR /*wzProductCode*/,
187
__in BOOTSTRAPPER_PACKAGE_STATE /*patchState*/,
@@ -242,6 +242,8 @@ public: // IBootstrapperApplication
242
243
virtual STDMETHODIMP OnPlanPackageBegin(
244
__in_z LPCWSTR /*wzPackageId*/,
245
+ __in BOOTSTRAPPER_PACKAGE_STATE /*state*/,
246
+ __in BOOL /*fInstallCondition*/,
247
__in BOOTSTRAPPER_REQUEST_STATE /*recommendedState*/,
248
__inout BOOTSTRAPPER_REQUEST_STATE* /*pRequestState*/,
249
__inout BOOL* pfCancel
@@ -251,7 +253,7 @@ public: // IBootstrapperApplication
253
return S_OK;
254
}
255
254
- virtual STDMETHODIMP OnPlanTargetMsiPackage(
256
+ virtual STDMETHODIMP OnPlanPatchTarget(
257
__in_z LPCWSTR /*wzPackageId*/,
258
__in_z LPCWSTR /*wzProductCode*/,
259
__in BOOTSTRAPPER_REQUEST_STATE /*recommendedState*/,
@@ -292,8 +294,14 @@ public: // IBootstrapperApplication
294
virtual STDMETHODIMP OnPlanPackageComplete(
295
__in_z LPCWSTR /*wzPackageId*/,
296
__in HRESULT /*hrStatus*/,
295
- __in BOOTSTRAPPER_PACKAGE_STATE /*state*/,
296
- __in BOOTSTRAPPER_REQUEST_STATE /*requested*/,
297
+ __in BOOTSTRAPPER_REQUEST_STATE /*requested*/
298
+ )
299
+ {
300
+ return S_OK;
301
+ }
302
+
303
+ virtual STDMETHODIMP OnPlannedPackage(
304
+ __in_z LPCWSTR /*wzPackageId*/,
305
__in BOOTSTRAPPER_ACTION_STATE /*execute*/,
306
__in BOOTSTRAPPER_ACTION_STATE /*rollback*/
307
)
src/balutil/inc/BalBaseBootstrapperApplicationProc.h
+26
-14
@@ -135,13 +135,13 @@ static HRESULT BalBaseBAProcOnDetectRelatedMsiPackage(
135
return pBA->OnDetectRelatedMsiPackage(pArgs->wzPackageId, pArgs->wzUpgradeCode, pArgs->wzProductCode, pArgs->fPerMachine, pArgs->wzVersion, pArgs->operation, &pResults->fCancel);
136
}
137
138
-static HRESULT BalBaseBAProcOnDetectTargetMsiPackage(
138
+static HRESULT BalBaseBAProcOnDetectPatchTarget(
139
__in IBootstrapperApplication* pBA,
140
- __in BA_ONDETECTTARGETMSIPACKAGE_ARGS* pArgs,
141
- __inout BA_ONDETECTTARGETMSIPACKAGE_RESULTS* pResults
140
+ __in BA_ONDETECTPATCHTARGET_ARGS* pArgs,
141
+ __inout BA_ONDETECTPATCHTARGET_RESULTS* pResults
142
)
143
{
144
- return pBA->OnDetectTargetMsiPackage(pArgs->wzPackageId, pArgs->wzProductCode, pArgs->patchState, &pResults->fCancel);
144
+ return pBA->OnDetectPatchTarget(pArgs->wzPackageId, pArgs->wzProductCode, pArgs->patchState, &pResults->fCancel);
145
}
146
147
static HRESULT BalBaseBAProcOnDetectMsiFeature(
@@ -177,16 +177,16 @@ static HRESULT BalBaseBAProcOnPlanPackageBegin(
177
__inout BA_ONPLANPACKAGEBEGIN_RESULTS* pResults
178
)
179
{
180
- return pBA->OnPlanPackageBegin(pArgs->wzPackageId, pArgs->recommendedState, &pResults->requestedState, &pResults->fCancel);
180
+ return pBA->OnPlanPackageBegin(pArgs->wzPackageId, pArgs->state, pArgs->fInstallCondition, pArgs->recommendedState, &pResults->requestedState, &pResults->fCancel);
181
}
182
183
-static HRESULT BalBaseBAProcOnPlanTargetMsiPackage(
183
+static HRESULT BalBaseBAProcOnPlanPatchTarget(
184
__in IBootstrapperApplication* pBA,
185
- __in BA_ONPLANTARGETMSIPACKAGE_ARGS* pArgs,
186
- __inout BA_ONPLANTARGETMSIPACKAGE_RESULTS* pResults
185
+ __in BA_ONPLANPATCHTARGET_ARGS* pArgs,
186
+ __inout BA_ONPLANPATCHTARGET_RESULTS* pResults
187
)
188
{
189
- return pBA->OnPlanTargetMsiPackage(pArgs->wzPackageId, pArgs->wzProductCode, pArgs->recommendedState, &pResults->requestedState, &pResults->fCancel);
189
+ return pBA->OnPlanPatchTarget(pArgs->wzPackageId, pArgs->wzProductCode, pArgs->recommendedState, &pResults->requestedState, &pResults->fCancel);
190
}
191
192
static HRESULT BalBaseBAProcOnPlanMsiFeature(
@@ -204,7 +204,16 @@ static HRESULT BalBaseBAProcOnPlanPackageComplete(
204
__inout BA_ONPLANPACKAGECOMPLETE_RESULTS* /*pResults*/
205
)
206
{
207
- return pBA->OnPlanPackageComplete(pArgs->wzPackageId, pArgs->hrStatus, pArgs->state, pArgs->requested, pArgs->execute, pArgs->rollback);
207
+ return pBA->OnPlanPackageComplete(pArgs->wzPackageId, pArgs->hrStatus, pArgs->requested);
208
+}
209
+
210
+static HRESULT BalBaseBAProcOnPlannedPackage(
211
+ __in IBootstrapperApplication* pBA,
212
+ __in BA_ONPLANNEDPACKAGE_ARGS* pArgs,
213
+ __inout BA_ONPLANNEDPACKAGE_RESULTS* /*pResults*/
214
+ )
215
+{
216
+ return pBA->OnPlannedPackage(pArgs->wzPackageId, pArgs->execute, pArgs->rollback);
217
}
218
219
static HRESULT BalBaseBAProcOnApplyBegin(
@@ -638,8 +647,8 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc(
647
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTRELATEDMSIPACKAGE:
648
hr = BalBaseBAProcOnDetectRelatedMsiPackage(pBA, reinterpret_cast<BA_ONDETECTRELATEDMSIPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONDETECTRELATEDMSIPACKAGE_RESULTS*>(pvResults));
649
break;
641
- case BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTTARGETMSIPACKAGE:
642
- hr = BalBaseBAProcOnDetectTargetMsiPackage(pBA, reinterpret_cast<BA_ONDETECTTARGETMSIPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONDETECTTARGETMSIPACKAGE_RESULTS*>(pvResults));
650
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTPATCHTARGET:
651
+ hr = BalBaseBAProcOnDetectPatchTarget(pBA, reinterpret_cast<BA_ONDETECTPATCHTARGET_ARGS*>(pvArgs), reinterpret_cast<BA_ONDETECTPATCHTARGET_RESULTS*>(pvResults));
652
break;
653
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTMSIFEATURE:
654
hr = BalBaseBAProcOnDetectMsiFeature(pBA, reinterpret_cast<BA_ONDETECTMSIFEATURE_ARGS*>(pvArgs), reinterpret_cast<BA_ONDETECTMSIFEATURE_RESULTS*>(pvResults));
@@ -653,8 +662,8 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc(
662
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANPACKAGEBEGIN:
663
hr = BalBaseBAProcOnPlanPackageBegin(pBA, reinterpret_cast<BA_ONPLANPACKAGEBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANPACKAGEBEGIN_RESULTS*>(pvResults));
664
break;
656
- case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANTARGETMSIPACKAGE:
657
- hr = BalBaseBAProcOnPlanTargetMsiPackage(pBA, reinterpret_cast<BA_ONPLANTARGETMSIPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANTARGETMSIPACKAGE_RESULTS*>(pvResults));
665
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANPATCHTARGET:
666
+ hr = BalBaseBAProcOnPlanPatchTarget(pBA, reinterpret_cast<BA_ONPLANPATCHTARGET_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANPATCHTARGET_RESULTS*>(pvResults));
667
break;
668
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANMSIFEATURE:
669
hr = BalBaseBAProcOnPlanMsiFeature(pBA, reinterpret_cast<BA_ONPLANMSIFEATURE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANMSIFEATURE_RESULTS*>(pvResults));
@@ -784,6 +793,9 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc(
793
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
794
hr = BalBaseBAProcOnSystemRestorePointComplete(pBA, reinterpret_cast<BA_ONSYSTEMRESTOREPOINTCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONSYSTEMRESTOREPOINTCOMPLETE_RESULTS*>(pvResults));
795
break;
796
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANNEDPACKAGE:
797
+ hr = BalBaseBAProcOnPlannedPackage(pBA, reinterpret_cast<BA_ONPLANNEDPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANNEDPACKAGE_RESULTS*>(pvResults));
798
+ break;
799
}
800
}
801
src/balutil/inc/IBootstrapperApplication.h
+18
-11
@@ -91,9 +91,9 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
91
__inout BOOL* pfCancel
92
) = 0;
93
94
- // OnDetectTargetMsiPackage - called when the engine detects a target MSI package for
95
- // an MSP package.
96
- STDMETHOD(OnDetectTargetMsiPackage)(
94
+ // OnDetectPatchTarget - called when the engine detects a target product
95
+ // for an MSP package.
96
+ STDMETHOD(OnDetectPatchTarget)(
97
__in_z LPCWSTR wzPackageId,
98
__in_z LPCWSTR wzProductCode,
99
__in BOOTSTRAPPER_PACKAGE_STATE patchState,
@@ -137,17 +137,20 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
137
__inout BOOL* pfCancel
138
) = 0;
139
140
- // OnPlanPackageBegin - called when the engine begins planning a package.
140
+ // OnPlanPackageBegin - called when the engine has begun getting the BA's input
141
+ // for planning a package.
142
STDMETHOD(OnPlanPackageBegin)(
143
__in_z LPCWSTR wzPackageId,
144
+ __in BOOTSTRAPPER_PACKAGE_STATE state,
145
+ __in BOOL fInstallCondition,
146
__in BOOTSTRAPPER_REQUEST_STATE recommendedState,
147
__inout BOOTSTRAPPER_REQUEST_STATE* pRequestedState,
148
__inout BOOL* pfCancel
149
) = 0;
150
148
- // OnPlanTargetMsiPackage - called when the engine plans an MSP package
149
- // to apply to an MSI package.
150
- STDMETHOD(OnPlanTargetMsiPackage)(
151
+ // OnPlanPatchTarget - called when the engine is about to plan a target
152
+ // of an MSP package.
153
+ STDMETHOD(OnPlanPatchTarget)(
154
__in_z LPCWSTR wzPackageId,
155
__in_z LPCWSTR wzProductCode,
156
__in BOOTSTRAPPER_REQUEST_STATE recommendedState,
@@ -177,13 +180,17 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
180
__inout BOOL* pfDisableExternalUiHandler
181
) = 0;
182
180
- // OnPlanPackageComplete - called after the engine plans a package.
181
- //
183
+ // OnPlanPackageComplete - called after the engine has completed getting the BA's input
184
+ // for planning a package.
185
STDMETHOD(OnPlanPackageComplete)(
186
__in_z LPCWSTR wzPackageId,
187
__in HRESULT hrStatus,
185
- __in BOOTSTRAPPER_PACKAGE_STATE state,
186
- __in BOOTSTRAPPER_REQUEST_STATE requested,
188
+ __in BOOTSTRAPPER_REQUEST_STATE requested
189
+ ) = 0;
190
+
191
+ // OnPlannedPackage - called after the engine has completed planning a package.
192
+ STDMETHOD(OnPlannedPackage)(
193
+ __in_z LPCWSTR wzPackageId,
194
__in BOOTSTRAPPER_ACTION_STATE execute,
195
__in BOOTSTRAPPER_ACTION_STATE rollback
196
) = 0;
src/balutil/packages.config
+2
-2
@@ -1,6 +1,6 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="3.3.37" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.75" targetFramework="native" />
5
- <package id="WixToolset.DUtil" version="4.0.59" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.89" targetFramework="native" />
5
+ <package id="WixToolset.DUtil" version="4.0.62" targetFramework="native" />
6
</packages>
\ No newline at end of file
src/bextutil/bextutil.vcxproj
+4
-4
@@ -2,8 +2,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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" />
7
8
<ItemGroup Label="ProjectConfigurations">
9
<ProjectConfiguration Include="Debug|ARM64">
@@ -87,8 +87,8 @@
87
<PropertyGroup>
88
<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>
89
</PropertyGroup>
90
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props'))" />
91
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props'))" />
90
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props'))" />
91
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props'))" />
92
<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'))" />
93
</Target>
94
</Project>
src/bextutil/packages.config
+2
-2
@@ -1,6 +1,6 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="3.3.37" targetFramework="native" developmentDependency="true" />
4
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.75" targetFramework="native" />
5
- <package id="WixToolset.DUtil" version="4.0.59" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.89" targetFramework="native" />
5
+ <package id="WixToolset.DUtil" version="4.0.62" targetFramework="native" />
6
</packages>
\ No newline at end of file
src/mbanative/mbanative.vcxproj
+7
-5
@@ -5,8 +5,8 @@
5
<Import Project="..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.props" Condition="Exists('..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.props')" />
6
<Import Project="..\..\packages\Microsoft.SourceLink.Common.1.0.0\build\Microsoft.SourceLink.Common.props" Condition="Exists('..\..\packages\Microsoft.SourceLink.Common.1.0.0\build\Microsoft.SourceLink.Common.props')" />
7
<Import Project="..\..\packages\Microsoft.Build.Tasks.Git.1.0.0\build\Microsoft.Build.Tasks.Git.props" Condition="Exists('..\..\packages\Microsoft.Build.Tasks.Git.1.0.0\build\Microsoft.Build.Tasks.Git.props')" />
8
- <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" />
9
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" />
8
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" />
9
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" />
10
11
<ItemGroup Label="ProjectConfigurations">
12
<ProjectConfiguration Include="Debug|ARM64">
@@ -79,7 +79,9 @@
79
</ItemGroup>
80
81
<ItemGroup>
82
- <ProjectReference Include="..\balutil\balutil.vcxproj" />
82
+ <ProjectReference Include="..\balutil\balutil.vcxproj">
83
+ <Project>{EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}</Project>
84
+ </ProjectReference>
85
</ItemGroup>
86
87
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
@@ -94,7 +96,7 @@
96
<Error Condition="!Exists('..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.props'))" />
97
<Error Condition="!Exists('..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Microsoft.SourceLink.GitHub.1.0.0\build\Microsoft.SourceLink.GitHub.targets'))" />
98
<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'))" />
97
- <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props'))" />
98
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props'))" />
99
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props'))" />
100
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props'))" />
101
</Target>
102
</Project>
\ No newline at end of file
src/mbanative/packages.config
+2
-2
@@ -4,6 +4,6 @@
4
<package id="Microsoft.SourceLink.Common" version="1.0.0" targetFramework="native" developmentDependency="true" />
5
<package id="Microsoft.SourceLink.GitHub" version="1.0.0" targetFramework="native" developmentDependency="true" />
6
<package id="Nerdbank.GitVersioning" version="3.3.37" targetFramework="native" developmentDependency="true" />
7
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.75" targetFramework="native" />
8
- <package id="WixToolset.DUtil" version="4.0.59" targetFramework="native" />
7
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.89" targetFramework="native" />
8
+ <package id="WixToolset.DUtil" version="4.0.62" targetFramework="native" />
9
</packages>
\ No newline at end of file
src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj
+7
-5
@@ -4,8 +4,8 @@
4
5
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
6
<Import Project="..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props" Condition="Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props')" />
7
- <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" />
8
- <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" />
7
+ <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" />
8
+ <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" />
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
11
<Configuration>Debug</Configuration>
@@ -57,7 +57,9 @@
57
</Reference>
58
</ItemGroup>
59
<ItemGroup>
60
- <ProjectReference Include="..\..\balutil\balutil.vcxproj" />
60
+ <ProjectReference Include="..\..\balutil\balutil.vcxproj">
61
+ <Project>{EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}</Project>
62
+ </ProjectReference>
63
</ItemGroup>
64
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
65
<Import Project="..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets" Condition="Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets')" />
@@ -67,7 +69,7 @@
69
</PropertyGroup>
70
<Error Condition="!Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props'))" />
71
<Error Condition="!Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets'))" />
70
- <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props'))" />
71
- <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props'))" />
72
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props'))" />
73
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props'))" />
74
</Target>
75
</Project>
src/test/BalUtilUnitTest/packages.config
+2
-2
@@ -10,6 +10,6 @@
10
<package id="xunit.runner.visualstudio" version="2.4.1" />
11
<package id="WixBuildTools.TestSupport" version="4.0.47" />
12
<package id="WixBuildTools.TestSupport.Native" version="4.0.47" />
13
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.75" targetFramework="native" />
14
- <package id="WixToolset.DUtil" version="4.0.59" targetFramework="native" />
13
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.89" targetFramework="native" />
14
+ <package id="WixToolset.DUtil" version="4.0.62" targetFramework="native" />
15
</packages>
\ No newline at end of file
src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj
+7
-5
@@ -4,8 +4,8 @@
4
5
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
6
<Import Project="..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props" Condition="Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props')" />
7
- <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" />
8
- <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" />
7
+ <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" />
8
+ <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" />
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
11
<Configuration>Debug</Configuration>
@@ -56,7 +56,9 @@
56
</Reference>
57
</ItemGroup>
58
<ItemGroup>
59
- <ProjectReference Include="..\..\balutil\balutil.vcxproj" />
59
+ <ProjectReference Include="..\..\balutil\balutil.vcxproj">
60
+ <Project>{06027492-1CB9-48BC-B31E-C1F9356ED07E}</Project>
61
+ </ProjectReference>
62
</ItemGroup>
63
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
64
<Import Project="..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets" Condition="Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets')" />
@@ -66,7 +68,7 @@
68
</PropertyGroup>
69
<Error Condition="!Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props'))" />
70
<Error Condition="!Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.targets'))" />
69
- <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.75\build\WixToolset.BootstrapperCore.Native.props'))" />
70
- <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.59\build\WixToolset.DUtil.props'))" />
71
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.89\build\WixToolset.BootstrapperCore.Native.props'))" />
72
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.62\build\WixToolset.DUtil.props'))" />
73
</Target>
74
</Project>
src/test/BextUtilUnitTest/packages.config
+2
-2
@@ -10,6 +10,6 @@
10
<package id="xunit.runner.visualstudio" version="2.4.1" />
11
<package id="WixBuildTools.TestSupport" version="4.0.47" />
12
<package id="WixBuildTools.TestSupport.Native" version="4.0.47" />
13
- <package id="WixToolset.BootstrapperCore.Native" version="4.0.75" targetFramework="native" />
14
- <package id="WixToolset.DUtil" version="4.0.59" targetFramework="native" />
13
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.89" targetFramework="native" />
14
+ <package id="WixToolset.DUtil" version="4.0.62" targetFramework="native" />
15
</packages>
\ No newline at end of file