WIXFEAT:4626,5386 - Add more BA events.
OnBeginMsiTransactionBegin, OnBeginMsiTransactionComplete, OnCommitMsiTransactionBegin, OnCommitMsiTransactionComplete, OnRollbackMsiTransactionBegin, OnRollbackMsiTransactionComplete, OnPauseAutomaticUpdatesBegin, OnPauseAutomaticUpdatesComplete, OnSystemRestorePointBegin, OnSystemRestorePointComplete
Sean Hall committed
Dec 2, 2020 at 22:38 UTC
ca5d60d267051b4b75e22763ad8eda06f0501451
20 files changed
+893
-45
src/WixToolset.Mba.Core/BootstrapperApplication.cs
+270
-8
@@ -320,12 +320,62 @@ namespace WixToolset.Mba.Core
320
/// <summary>
321
/// Fired when the engine is about to launch the preapproved executable.
322
/// </summary>
323
- public event EventHandler<LaunchApprovedExeBeginArgs> LaunchApprovedExeBegin;
323
+ public event EventHandler<LaunchApprovedExeBeginEventArgs> LaunchApprovedExeBegin;
324
325
/// <summary>
326
/// Fired when the engine has completed launching the preapproved executable.
327
/// </summary>
328
- public event EventHandler<LaunchApprovedExeCompleteArgs> LaunchApprovedExeComplete;
328
+ public event EventHandler<LaunchApprovedExeCompleteEventArgs> LaunchApprovedExeComplete;
329
+
330
+ /// <summary>
331
+ /// Fired when the engine is about to begin an MSI transaction.
332
+ /// </summary>
333
+ public event EventHandler<BeginMsiTransactionBeginEventArgs> BeginMsiTransactionBegin;
334
+
335
+ /// <summary>
336
+ /// Fired when the engine has completed beginning an MSI transaction.
337
+ /// </summary>
338
+ public event EventHandler<BeginMsiTransactionCompleteEventArgs> BeginMsiTransactionComplete;
339
+
340
+ /// <summary>
341
+ /// Fired when the engine is about to commit an MSI transaction.
342
+ /// </summary>
343
+ public event EventHandler<CommitMsiTransactionBeginEventArgs> CommitMsiTransactionBegin;
344
+
345
+ /// <summary>
346
+ /// Fired when the engine has completed comitting an MSI transaction.
347
+ /// </summary>
348
+ public event EventHandler<CommitMsiTransactionCompleteEventArgs> CommitMsiTransactionComplete;
349
+
350
+ /// <summary>
351
+ /// Fired when the engine is about to rollback an MSI transaction.
352
+ /// </summary>
353
+ public event EventHandler<RollbackMsiTransactionBeginEventArgs> RollbackMsiTransactionBegin;
354
+
355
+ /// <summary>
356
+ /// Fired when the engine has completed rolling back an MSI transaction.
357
+ /// </summary>
358
+ public event EventHandler<RollbackMsiTransactionCompleteEventArgs> RollbackMsiTransactionComplete;
359
+
360
+ /// <summary>
361
+ /// Fired when the engine is about to pause Windows automatic updates.
362
+ /// </summary>
363
+ public event EventHandler<PauseAutomaticUpdatesBeginEventArgs> PauseAutomaticUpdatesBegin;
364
+
365
+ /// <summary>
366
+ /// Fired when the engine has completed pausing Windows automatic updates.
367
+ /// </summary>
368
+ public event EventHandler<PauseAutomaticUpdatesCompleteEventArgs> PauseAutomaticUpdatesComplete;
369
+
370
+ /// <summary>
371
+ /// Fired when the engine is about to take a system restore point.
372
+ /// </summary>
373
+ public event EventHandler<SystemRestorePointBeginEventArgs> SystemRestorePointBegin;
374
+
375
+ /// <summary>
376
+ /// Fired when the engine has completed taking a system restore point.
377
+ /// </summary>
378
+ public event EventHandler<SystemRestorePointCompleteEventArgs> SystemRestorePointComplete;
379
380
/// <summary>
381
/// Entry point that is called when the bootstrapper application is ready to run.
@@ -1071,9 +1121,9 @@ namespace WixToolset.Mba.Core
1121
/// Called by the engine before trying to launch the preapproved executable.
1122
/// </summary>
1123
/// <param name="args">Additional arguments for this event.</param>
1074
- protected virtual void OnLaunchApprovedExeBegin(LaunchApprovedExeBeginArgs args)
1124
+ protected virtual void OnLaunchApprovedExeBegin(LaunchApprovedExeBeginEventArgs args)
1125
{
1076
- EventHandler<LaunchApprovedExeBeginArgs> handler = this.LaunchApprovedExeBegin;
1126
+ EventHandler<LaunchApprovedExeBeginEventArgs> handler = this.LaunchApprovedExeBegin;
1127
if (null != handler)
1128
{
1129
handler(this, args);
@@ -1084,9 +1134,139 @@ namespace WixToolset.Mba.Core
1134
/// Called by the engine after trying to launch the preapproved executable.
1135
/// </summary>
1136
/// <param name="args">Additional arguments for this event.</param>
1087
- protected virtual void OnLaunchApprovedExeComplete(LaunchApprovedExeCompleteArgs args)
1137
+ protected virtual void OnLaunchApprovedExeComplete(LaunchApprovedExeCompleteEventArgs args)
1138
+ {
1139
+ EventHandler<LaunchApprovedExeCompleteEventArgs> handler = this.LaunchApprovedExeComplete;
1140
+ if (null != handler)
1141
+ {
1142
+ handler(this, args);
1143
+ }
1144
+ }
1145
+
1146
+ /// <summary>
1147
+ /// Called by the engine before beginning an MSI transaction.
1148
+ /// </summary>
1149
+ /// <param name="args">Additional arguments for this event.</param>
1150
+ protected virtual void OnBeginMsiTransactionBegin(BeginMsiTransactionBeginEventArgs args)
1151
+ {
1152
+ EventHandler<BeginMsiTransactionBeginEventArgs> handler = this.BeginMsiTransactionBegin;
1153
+ if (null != handler)
1154
+ {
1155
+ handler(this, args);
1156
+ }
1157
+ }
1158
+
1159
+ /// <summary>
1160
+ /// Called by the engine after beginning an MSI transaction.
1161
+ /// </summary>
1162
+ /// <param name="args">Additional arguments for this event.</param>
1163
+ protected virtual void OnBeginMsiTransactionComplete(BeginMsiTransactionCompleteEventArgs args)
1164
+ {
1165
+ EventHandler<BeginMsiTransactionCompleteEventArgs> handler = this.BeginMsiTransactionComplete;
1166
+ if (null != handler)
1167
+ {
1168
+ handler(this, args);
1169
+ }
1170
+ }
1171
+
1172
+ /// <summary>
1173
+ /// Called by the engine before committing an MSI transaction.
1174
+ /// </summary>
1175
+ /// <param name="args">Additional arguments for this event.</param>
1176
+ protected virtual void OnCommitMsiTransactionBegin(CommitMsiTransactionBeginEventArgs args)
1177
+ {
1178
+ EventHandler<CommitMsiTransactionBeginEventArgs> handler = this.CommitMsiTransactionBegin;
1179
+ if (null != handler)
1180
+ {
1181
+ handler(this, args);
1182
+ }
1183
+ }
1184
+
1185
+ /// <summary>
1186
+ /// Called by the engine after committing an MSI transaction.
1187
+ /// </summary>
1188
+ /// <param name="args">Additional arguments for this event.</param>
1189
+ protected virtual void OnCommitMsiTransactionComplete(CommitMsiTransactionCompleteEventArgs args)
1190
+ {
1191
+ EventHandler<CommitMsiTransactionCompleteEventArgs> handler = this.CommitMsiTransactionComplete;
1192
+ if (null != handler)
1193
+ {
1194
+ handler(this, args);
1195
+ }
1196
+ }
1197
+
1198
+ /// <summary>
1199
+ /// Called by the engine before rolling back an MSI transaction.
1200
+ /// </summary>
1201
+ /// <param name="args">Additional arguments for this event.</param>
1202
+ protected virtual void OnRollbackMsiTransactionBegin(RollbackMsiTransactionBeginEventArgs args)
1203
+ {
1204
+ EventHandler<RollbackMsiTransactionBeginEventArgs> handler = this.RollbackMsiTransactionBegin;
1205
+ if (null != handler)
1206
+ {
1207
+ handler(this, args);
1208
+ }
1209
+ }
1210
+
1211
+ /// <summary>
1212
+ /// Called by the engine after rolling back an MSI transaction.
1213
+ /// </summary>
1214
+ /// <param name="args">Additional arguments for this event.</param>
1215
+ protected virtual void OnRollbackMsiTransactionComplete(RollbackMsiTransactionCompleteEventArgs args)
1216
+ {
1217
+ EventHandler<RollbackMsiTransactionCompleteEventArgs> handler = this.RollbackMsiTransactionComplete;
1218
+ if (null != handler)
1219
+ {
1220
+ handler(this, args);
1221
+ }
1222
+ }
1223
+
1224
+ /// <summary>
1225
+ /// Called by the engine before pausing Windows automatic updates.
1226
+ /// </summary>
1227
+ /// <param name="args">Additional arguments for this event.</param>
1228
+ protected virtual void OnPauseAutomaticUpdatesBegin(PauseAutomaticUpdatesBeginEventArgs args)
1229
+ {
1230
+ EventHandler<PauseAutomaticUpdatesBeginEventArgs> handler = this.PauseAutomaticUpdatesBegin;
1231
+ if (null != handler)
1232
+ {
1233
+ handler(this, args);
1234
+ }
1235
+ }
1236
+
1237
+ /// <summary>
1238
+ /// Called by the engine after pausing Windows automatic updates.
1239
+ /// </summary>
1240
+ /// <param name="args">Additional arguments for this event.</param>
1241
+ protected virtual void OnPauseAutomaticUpdatesComplete(PauseAutomaticUpdatesCompleteEventArgs args)
1242
+ {
1243
+ EventHandler<PauseAutomaticUpdatesCompleteEventArgs> handler = this.PauseAutomaticUpdatesComplete;
1244
+ if (null != handler)
1245
+ {
1246
+ handler(this, args);
1247
+ }
1248
+ }
1249
+
1250
+ /// <summary>
1251
+ /// Called by the engine before taking a system restore point.
1252
+ /// </summary>
1253
+ /// <param name="args">Additional arguments for this event.</param>
1254
+ protected virtual void OnSystemRestorePointBegin(SystemRestorePointBeginEventArgs args)
1255
{
1089
- EventHandler<LaunchApprovedExeCompleteArgs> handler = this.LaunchApprovedExeComplete;
1256
+ EventHandler<SystemRestorePointBeginEventArgs> handler = this.SystemRestorePointBegin;
1257
+ if (null != handler)
1258
+ {
1259
+ handler(this, args);
1260
+ }
1261
+ }
1262
+
1263
+ /// <summary>
1264
+ /// Called by the engine after taking a system restore point.
1265
+ /// </summary>
1266
+ /// <param name="args">Additional arguments for this event.</param>
1267
+ protected virtual void OnSystemRestorePointComplete(SystemRestorePointCompleteEventArgs args)
1268
+ {
1269
+ EventHandler<SystemRestorePointCompleteEventArgs> handler = this.SystemRestorePointComplete;
1270
if (null != handler)
1271
{
1272
handler(this, args);
@@ -1588,7 +1768,7 @@ namespace WixToolset.Mba.Core
1768
1769
int IBootstrapperApplication.OnLaunchApprovedExeBegin(ref bool fCancel)
1770
{
1591
- LaunchApprovedExeBeginArgs args = new LaunchApprovedExeBeginArgs(fCancel);
1771
+ LaunchApprovedExeBeginEventArgs args = new LaunchApprovedExeBeginEventArgs(fCancel);
1772
this.OnLaunchApprovedExeBegin(args);
1773
1774
fCancel = args.Cancel;
@@ -1597,12 +1777,94 @@ namespace WixToolset.Mba.Core
1777
1778
int IBootstrapperApplication.OnLaunchApprovedExeComplete(int hrStatus, int processId)
1779
{
1600
- LaunchApprovedExeCompleteArgs args = new LaunchApprovedExeCompleteArgs(hrStatus, processId);
1780
+ LaunchApprovedExeCompleteEventArgs args = new LaunchApprovedExeCompleteEventArgs(hrStatus, processId);
1781
this.OnLaunchApprovedExeComplete(args);
1782
1783
return args.HResult;
1784
}
1785
1786
+ int IBootstrapperApplication.OnBeginMsiTransactionBegin(string transactionId, ref bool fCancel)
1787
+ {
1788
+ BeginMsiTransactionBeginEventArgs args = new BeginMsiTransactionBeginEventArgs(transactionId, fCancel);
1789
+ this.OnBeginMsiTransactionBegin(args);
1790
+
1791
+ fCancel = args.Cancel;
1792
+ return args.HResult;
1793
+ }
1794
+
1795
+ int IBootstrapperApplication.OnBeginMsiTransactionComplete(string transactionId, int hrStatus)
1796
+ {
1797
+ BeginMsiTransactionCompleteEventArgs args = new BeginMsiTransactionCompleteEventArgs(transactionId, hrStatus);
1798
+ this.OnBeginMsiTransactionComplete(args);
1799
+
1800
+ return args.HResult;
1801
+ }
1802
+
1803
+ int IBootstrapperApplication.OnCommitMsiTransactionBegin(string transactionId, ref bool fCancel)
1804
+ {
1805
+ CommitMsiTransactionBeginEventArgs args = new CommitMsiTransactionBeginEventArgs(transactionId, fCancel);
1806
+ this.OnCommitMsiTransactionBegin(args);
1807
+
1808
+ fCancel = args.Cancel;
1809
+ return args.HResult;
1810
+ }
1811
+
1812
+ int IBootstrapperApplication.OnCommitMsiTransactionComplete(string transactionId, int hrStatus)
1813
+ {
1814
+ CommitMsiTransactionCompleteEventArgs args = new CommitMsiTransactionCompleteEventArgs(transactionId, hrStatus);
1815
+ this.OnCommitMsiTransactionComplete(args);
1816
+
1817
+ return args.HResult;
1818
+ }
1819
+
1820
+ int IBootstrapperApplication.OnRollbackMsiTransactionBegin(string transactionId)
1821
+ {
1822
+ RollbackMsiTransactionBeginEventArgs args = new RollbackMsiTransactionBeginEventArgs(transactionId);
1823
+ this.OnRollbackMsiTransactionBegin(args);
1824
+
1825
+ return args.HResult;
1826
+ }
1827
+
1828
+ int IBootstrapperApplication.OnRollbackMsiTransactionComplete(string transactionId, int hrStatus)
1829
+ {
1830
+ RollbackMsiTransactionCompleteEventArgs args = new RollbackMsiTransactionCompleteEventArgs(transactionId, hrStatus);
1831
+ this.OnRollbackMsiTransactionComplete(args);
1832
+
1833
+ return args.HResult;
1834
+ }
1835
+
1836
+ int IBootstrapperApplication.OnPauseAutomaticUpdatesBegin()
1837
+ {
1838
+ PauseAutomaticUpdatesBeginEventArgs args = new PauseAutomaticUpdatesBeginEventArgs();
1839
+ this.OnPauseAutomaticUpdatesBegin(args);
1840
+
1841
+ return args.HResult;
1842
+ }
1843
+
1844
+ int IBootstrapperApplication.OnPauseAutomaticUpdatesComplete(int hrStatus)
1845
+ {
1846
+ PauseAutomaticUpdatesCompleteEventArgs args = new PauseAutomaticUpdatesCompleteEventArgs(hrStatus);
1847
+ this.OnPauseAutomaticUpdatesComplete(args);
1848
+
1849
+ return args.HResult;
1850
+ }
1851
+
1852
+ int IBootstrapperApplication.OnSystemRestorePointBegin()
1853
+ {
1854
+ SystemRestorePointBeginEventArgs args = new SystemRestorePointBeginEventArgs();
1855
+ this.OnSystemRestorePointBegin(args);
1856
+
1857
+ return args.HResult;
1858
+ }
1859
+
1860
+ int IBootstrapperApplication.OnSystemRestorePointComplete(int hrStatus)
1861
+ {
1862
+ SystemRestorePointCompleteEventArgs args = new SystemRestorePointCompleteEventArgs(hrStatus);
1863
+ this.OnSystemRestorePointComplete(args);
1864
+
1865
+ return args.HResult;
1866
+ }
1867
+
1868
int IBootstrapperApplication.BAProc(int message, IntPtr pvArgs, IntPtr pvResults, IntPtr pvContext)
1869
{
1870
switch (message)
src/WixToolset.Mba.Core/EventArgs.cs
+187
-4
@@ -1948,9 +1948,9 @@ namespace WixToolset.Mba.Core
1948
/// Additional arguments passed by the engine before it tries to launch the preapproved executable.
1949
/// </summary>
1950
[Serializable]
1951
- public class LaunchApprovedExeBeginArgs : CancellableHResultEventArgs
1951
+ public class LaunchApprovedExeBeginEventArgs : CancellableHResultEventArgs
1952
{
1953
- public LaunchApprovedExeBeginArgs(bool cancelRecommendation)
1953
+ public LaunchApprovedExeBeginEventArgs(bool cancelRecommendation)
1954
: base(cancelRecommendation)
1955
{
1956
}
@@ -1960,11 +1960,11 @@ namespace WixToolset.Mba.Core
1960
/// Additional arguments passed by the engine after it finished trying to launch the preapproved executable.
1961
/// </summary>
1962
[Serializable]
1963
- public class LaunchApprovedExeCompleteArgs : StatusEventArgs
1963
+ public class LaunchApprovedExeCompleteEventArgs : StatusEventArgs
1964
{
1965
private int processId;
1966
1967
- public LaunchApprovedExeCompleteArgs(int hrStatus, int processId)
1967
+ public LaunchApprovedExeCompleteEventArgs(int hrStatus, int processId)
1968
: base(hrStatus)
1969
{
1970
this.processId = processId;
@@ -1979,4 +1979,187 @@ namespace WixToolset.Mba.Core
1979
get { return this.processId; }
1980
}
1981
}
1982
+
1983
+ /// <summary>
1984
+ /// Additional arguments passed by the engine before beginning an MSI transaction.
1985
+ /// </summary>
1986
+ [Serializable]
1987
+ public class BeginMsiTransactionBeginEventArgs : CancellableHResultEventArgs
1988
+ {
1989
+ private string transactionId;
1990
+
1991
+ public BeginMsiTransactionBeginEventArgs(string transactionId, bool cancelRecommendation)
1992
+ : base(cancelRecommendation)
1993
+ {
1994
+ this.transactionId = transactionId;
1995
+ }
1996
+
1997
+ /// <summary>
1998
+ /// Gets the MSI transaction Id.
1999
+ /// </summary>
2000
+ public string TransactionId
2001
+ {
2002
+ get { return this.transactionId; }
2003
+ }
2004
+ }
2005
+
2006
+ /// <summary>
2007
+ /// Additional arguments passed by the engine after beginning an MSI transaction.
2008
+ /// </summary>
2009
+ [Serializable]
2010
+ public class BeginMsiTransactionCompleteEventArgs : StatusEventArgs
2011
+ {
2012
+ private string transactionId;
2013
+
2014
+ public BeginMsiTransactionCompleteEventArgs(string transactionId, int hrStatus)
2015
+ : base(hrStatus)
2016
+ {
2017
+ this.transactionId = transactionId;
2018
+ }
2019
+
2020
+ /// <summary>
2021
+ /// Gets the MSI transaction Id.
2022
+ /// </summary>
2023
+ public string TransactionId
2024
+ {
2025
+ get { return this.transactionId; }
2026
+ }
2027
+ }
2028
+
2029
+ /// <summary>
2030
+ /// Additional arguments passed by the engine before committing an MSI transaction.
2031
+ /// </summary>
2032
+ [Serializable]
2033
+ public class CommitMsiTransactionBeginEventArgs : CancellableHResultEventArgs
2034
+ {
2035
+ private string transactionId;
2036
+
2037
+ public CommitMsiTransactionBeginEventArgs(string transactionId, bool cancelRecommendation)
2038
+ : base(cancelRecommendation)
2039
+ {
2040
+ this.transactionId = transactionId;
2041
+ }
2042
+
2043
+ /// <summary>
2044
+ /// Gets the MSI transaction Id.
2045
+ /// </summary>
2046
+ public string TransactionId
2047
+ {
2048
+ get { return this.transactionId; }
2049
+ }
2050
+ }
2051
+
2052
+ /// <summary>
2053
+ /// Additional arguments passed by the engine after committing an MSI transaction.
2054
+ /// </summary>
2055
+ [Serializable]
2056
+ public class CommitMsiTransactionCompleteEventArgs : StatusEventArgs
2057
+ {
2058
+ private string transactionId;
2059
+
2060
+ public CommitMsiTransactionCompleteEventArgs(string transactionId, int hrStatus)
2061
+ : base(hrStatus)
2062
+ {
2063
+ this.transactionId = transactionId;
2064
+ }
2065
+
2066
+ /// <summary>
2067
+ /// Gets the MSI transaction Id.
2068
+ /// </summary>
2069
+ public string TransactionId
2070
+ {
2071
+ get { return this.transactionId; }
2072
+ }
2073
+ }
2074
+
2075
+ /// <summary>
2076
+ /// Additional arguments passed by the engine before rolling back an MSI transaction.
2077
+ /// </summary>
2078
+ [Serializable]
2079
+ public class RollbackMsiTransactionBeginEventArgs : HResultEventArgs
2080
+ {
2081
+ private string transactionId;
2082
+
2083
+ public RollbackMsiTransactionBeginEventArgs(string transactionId)
2084
+ {
2085
+ this.transactionId = transactionId;
2086
+ }
2087
+
2088
+ /// <summary>
2089
+ /// Gets the MSI transaction Id.
2090
+ /// </summary>
2091
+ public string TransactionId
2092
+ {
2093
+ get { return this.transactionId; }
2094
+ }
2095
+ }
2096
+
2097
+ /// <summary>
2098
+ /// Additional arguments passed by the engine after rolling back an MSI transaction.
2099
+ /// </summary>
2100
+ [Serializable]
2101
+ public class RollbackMsiTransactionCompleteEventArgs : StatusEventArgs
2102
+ {
2103
+ private string transactionId;
2104
+
2105
+ public RollbackMsiTransactionCompleteEventArgs(string transactionId, int hrStatus)
2106
+ : base(hrStatus)
2107
+ {
2108
+ this.transactionId = transactionId;
2109
+ }
2110
+
2111
+ /// <summary>
2112
+ /// Gets the MSI transaction Id.
2113
+ /// </summary>
2114
+ public string TransactionId
2115
+ {
2116
+ get { return this.transactionId; }
2117
+ }
2118
+ }
2119
+
2120
+ /// <summary>
2121
+ /// Additional arguments passed by the engine before pausing Windows automatic updates.
2122
+ /// </summary>
2123
+ [Serializable]
2124
+ public class PauseAutomaticUpdatesBeginEventArgs : HResultEventArgs
2125
+ {
2126
+ public PauseAutomaticUpdatesBeginEventArgs()
2127
+ {
2128
+ }
2129
+ }
2130
+
2131
+ /// <summary>
2132
+ /// Additional arguments passed by the engine after pausing Windows automatic updates.
2133
+ /// </summary>
2134
+ [Serializable]
2135
+ public class PauseAutomaticUpdatesCompleteEventArgs : StatusEventArgs
2136
+ {
2137
+ public PauseAutomaticUpdatesCompleteEventArgs(int hrStatus)
2138
+ : base(hrStatus)
2139
+ {
2140
+ }
2141
+ }
2142
+
2143
+ /// <summary>
2144
+ /// Additional arguments passed by the engine before taking a system restore point.
2145
+ /// </summary>
2146
+ [Serializable]
2147
+ public class SystemRestorePointBeginEventArgs : HResultEventArgs
2148
+ {
2149
+ public SystemRestorePointBeginEventArgs()
2150
+ {
2151
+ }
2152
+ }
2153
+
2154
+ /// <summary>
2155
+ /// Additional arguments passed by the engine after taking a system restore point.
2156
+ /// </summary>
2157
+ [Serializable]
2158
+ public class SystemRestorePointCompleteEventArgs : StatusEventArgs
2159
+ {
2160
+ public SystemRestorePointCompleteEventArgs(int hrStatus)
2161
+ : base(hrStatus)
2162
+ {
2163
+ }
2164
+ }
2165
}
src/WixToolset.Mba.Core/IBootstrapperApplication.cs
+63
-1
@@ -12,7 +12,6 @@ namespace WixToolset.Mba.Core
12
[ComImport]
13
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
14
[Guid("53C31D56-49C0-426B-AB06-099D717C67FE")]
15
- [GeneratedCodeAttribute("WixToolset.Bootstrapper.InteropCodeGenerator", "1.0.0.0")]
15
public interface IBootstrapperApplication
16
{
17
[PreserveSig]
@@ -500,6 +499,69 @@ namespace WixToolset.Mba.Core
499
int processId
500
);
501
502
+ [PreserveSig]
503
+ [return: MarshalAs(UnmanagedType.I4)]
504
+ int OnBeginMsiTransactionBegin(
505
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId,
506
+ [MarshalAs(UnmanagedType.Bool)] ref bool fCancel
507
+ );
508
+
509
+ [PreserveSig]
510
+ [return: MarshalAs(UnmanagedType.I4)]
511
+ int OnBeginMsiTransactionComplete(
512
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId,
513
+ int hrStatus
514
+ );
515
+
516
+ [PreserveSig]
517
+ [return: MarshalAs(UnmanagedType.I4)]
518
+ int OnCommitMsiTransactionBegin(
519
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId,
520
+ [MarshalAs(UnmanagedType.Bool)] ref bool fCancel
521
+ );
522
+
523
+ [PreserveSig]
524
+ [return: MarshalAs(UnmanagedType.I4)]
525
+ int OnCommitMsiTransactionComplete(
526
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId,
527
+ int hrStatus
528
+ );
529
+
530
+ [PreserveSig]
531
+ [return: MarshalAs(UnmanagedType.I4)]
532
+ int OnRollbackMsiTransactionBegin(
533
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId
534
+ );
535
+
536
+ [PreserveSig]
537
+ [return: MarshalAs(UnmanagedType.I4)]
538
+ int OnRollbackMsiTransactionComplete(
539
+ [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId,
540
+ int hrStatus
541
+ );
542
+
543
+ [PreserveSig]
544
+ [return: MarshalAs(UnmanagedType.I4)]
545
+ int OnPauseAutomaticUpdatesBegin(
546
+ );
547
+
548
+ [PreserveSig]
549
+ [return: MarshalAs(UnmanagedType.I4)]
550
+ int OnPauseAutomaticUpdatesComplete(
551
+ int hrStatus
552
+ );
553
+
554
+ [PreserveSig]
555
+ [return: MarshalAs(UnmanagedType.I4)]
556
+ int OnSystemRestorePointBegin(
557
+ );
558
+
559
+ [PreserveSig]
560
+ [return: MarshalAs(UnmanagedType.I4)]
561
+ int OnSystemRestorePointComplete(
562
+ int hrStatus
563
+ );
564
+
565
[PreserveSig]
566
[return: MarshalAs(UnmanagedType.I4)]
567
int BAProc(
src/WixToolset.Mba.Core/IDefaultBootstrapperApplication.cs
+13
-2
@@ -8,6 +8,8 @@ namespace WixToolset.Mba.Core
8
{
9
event EventHandler<ApplyBeginEventArgs> ApplyBegin;
10
event EventHandler<ApplyCompleteEventArgs> ApplyComplete;
11
+ event EventHandler<BeginMsiTransactionBeginEventArgs> BeginMsiTransactionBegin;
12
+ event EventHandler<BeginMsiTransactionCompleteEventArgs> BeginMsiTransactionComplete;
13
event EventHandler<CacheAcquireBeginEventArgs> CacheAcquireBegin;
14
event EventHandler<CacheAcquireCompleteEventArgs> CacheAcquireComplete;
15
event EventHandler<CacheAcquireProgressEventArgs> CacheAcquireProgress;
@@ -17,6 +19,8 @@ namespace WixToolset.Mba.Core
19
event EventHandler<CachePackageCompleteEventArgs> CachePackageComplete;
20
event EventHandler<CacheVerifyBeginEventArgs> CacheVerifyBegin;
21
event EventHandler<CacheVerifyCompleteEventArgs> CacheVerifyComplete;
22
+ event EventHandler<CommitMsiTransactionBeginEventArgs> CommitMsiTransactionBegin;
23
+ event EventHandler<CommitMsiTransactionCompleteEventArgs> CommitMsiTransactionComplete;
24
event EventHandler<DetectBeginEventArgs> DetectBegin;
25
event EventHandler<DetectCompatibleMsiPackageEventArgs> DetectCompatibleMsiPackage;
26
event EventHandler<DetectCompleteEventArgs> DetectComplete;
@@ -41,13 +45,16 @@ namespace WixToolset.Mba.Core
45
event EventHandler<ExecutePackageCompleteEventArgs> ExecutePackageComplete;
46
event EventHandler<ExecutePatchTargetEventArgs> ExecutePatchTarget;
47
event EventHandler<ExecuteProgressEventArgs> ExecuteProgress;
44
- event EventHandler<LaunchApprovedExeBeginArgs> LaunchApprovedExeBegin;
45
- event EventHandler<LaunchApprovedExeCompleteArgs> LaunchApprovedExeComplete;
48
+ event EventHandler<LaunchApprovedExeBeginEventArgs> LaunchApprovedExeBegin;
49
+ event EventHandler<LaunchApprovedExeCompleteEventArgs> LaunchApprovedExeComplete;
50
+ event EventHandler<PauseAutomaticUpdatesBeginEventArgs> PauseAutomaticUpdatesBegin;
51
+ event EventHandler<PauseAutomaticUpdatesCompleteEventArgs> PauseAutomaticUpdatesComplete;
52
event EventHandler<PlanBeginEventArgs> PlanBegin;
53
event EventHandler<PlanCompatibleMsiPackageBeginEventArgs> PlanCompatibleMsiPackageBegin;
54
event EventHandler<PlanCompatibleMsiPackageCompleteEventArgs> PlanCompatibleMsiPackageComplete;
55
event EventHandler<PlanCompleteEventArgs> PlanComplete;
56
event EventHandler<PlanMsiFeatureEventArgs> PlanMsiFeature;
57
+ event EventHandler<PlanMsiPackageEventArgs> PlanMsiPackage;
58
event EventHandler<PlanPackageBeginEventArgs> PlanPackageBegin;
59
event EventHandler<PlanPackageCompleteEventArgs> PlanPackageComplete;
60
event EventHandler<PlanRelatedBundleEventArgs> PlanRelatedBundle;
@@ -56,8 +63,12 @@ namespace WixToolset.Mba.Core
63
event EventHandler<RegisterBeginEventArgs> RegisterBegin;
64
event EventHandler<RegisterCompleteEventArgs> RegisterComplete;
65
event EventHandler<ResolveSourceEventArgs> ResolveSource;
66
+ event EventHandler<RollbackMsiTransactionBeginEventArgs> RollbackMsiTransactionBegin;
67
+ event EventHandler<RollbackMsiTransactionCompleteEventArgs> RollbackMsiTransactionComplete;
68
event EventHandler<ShutdownEventArgs> Shutdown;
69
event EventHandler<StartupEventArgs> Startup;
70
+ event EventHandler<SystemRestorePointBeginEventArgs> SystemRestorePointBegin;
71
+ event EventHandler<SystemRestorePointCompleteEventArgs> SystemRestorePointComplete;
72
event EventHandler<SystemShutdownEventArgs> SystemShutdown;
73
event EventHandler<UnregisterBeginEventArgs> UnregisterBegin;
74
event EventHandler<UnregisterCompleteEventArgs> UnregisterComplete;
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.38\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.56\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.38\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props'))" />
102
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props'))" />
101
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props'))" />
102
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.56\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
+10
@@ -65,6 +65,16 @@ enum BA_FUNCTIONS_MESSAGE
65
BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXEBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONLAUNCHAPPROVEDEXEBEGIN,
66
BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE,
67
BA_FUNCTIONS_MESSAGE_ONPLANMSIPACKAGE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANMSIPACKAGE,
68
+ BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONBEGINMSITRANSACTIONBEGIN,
69
+ BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE,
70
+ BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN,
71
+ BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE,
72
+ BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN,
73
+ BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE,
74
+ BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN,
75
+ BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE,
76
+ BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN,
77
+ BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE = BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE,
78
79
BA_FUNCTIONS_MESSAGE_ONTHEMELOADED = 1024,
80
BA_FUNCTIONS_MESSAGE_WNDPROC,
src/balutil/inc/BalBaseBAFunctions.h
+73
@@ -612,6 +612,79 @@ public: // IBootstrapperApplication
612
return S_OK;
613
}
614
615
+ virtual STDMETHODIMP OnBeginMsiTransactionBegin(
616
+ __in_z LPCWSTR /*wzTransactionId*/,
617
+ __inout BOOL* /*pfCancel*/
618
+ )
619
+ {
620
+ return S_OK;
621
+ }
622
+
623
+ virtual STDMETHODIMP OnBeginMsiTransactionComplete(
624
+ __in_z LPCWSTR /*wzTransactionId*/,
625
+ __in HRESULT /*hrStatus*/
626
+ )
627
+ {
628
+ return S_OK;
629
+ }
630
+
631
+ virtual STDMETHODIMP OnCommitMsiTransactionBegin(
632
+ __in_z LPCWSTR /*wzTransactionId*/,
633
+ __inout BOOL* /*pfCancel*/
634
+ )
635
+ {
636
+ return S_OK;
637
+ }
638
+
639
+ virtual STDMETHODIMP OnCommitMsiTransactionComplete(
640
+ __in_z LPCWSTR /*wzTransactionId*/,
641
+ __in HRESULT /*hrStatus*/
642
+ )
643
+ {
644
+ return S_OK;
645
+ }
646
+
647
+ virtual STDMETHODIMP OnRollbackMsiTransactionBegin(
648
+ __in_z LPCWSTR /*wzTransactionId*/
649
+ )
650
+ {
651
+ return S_OK;
652
+ }
653
+
654
+ virtual STDMETHODIMP OnRollbackMsiTransactionComplete(
655
+ __in_z LPCWSTR /*wzTransactionId*/,
656
+ __in HRESULT /*hrStatus*/
657
+ )
658
+ {
659
+ return S_OK;
660
+ }
661
+
662
+ virtual STDMETHODIMP OnPauseAutomaticUpdatesBegin(
663
+ )
664
+ {
665
+ return S_OK;
666
+ }
667
+
668
+ virtual STDMETHODIMP OnPauseAutomaticUpdatesComplete(
669
+ __in HRESULT /*hrStatus*/
670
+ )
671
+ {
672
+ return S_OK;
673
+ }
674
+
675
+ virtual STDMETHODIMP OnSystemRestorePointBegin(
676
+ )
677
+ {
678
+ return S_OK;
679
+ }
680
+
681
+ virtual STDMETHODIMP OnSystemRestorePointComplete(
682
+ __in HRESULT /*hrStatus*/
683
+ )
684
+ {
685
+ return S_OK;
686
+ }
687
+
688
virtual STDMETHODIMP_(HRESULT) BAProc(
689
__in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/,
690
__in const LPVOID /*pvArgs*/,
src/balutil/inc/BalBaseBAFunctionsProc.h
+10
@@ -100,6 +100,16 @@ static HRESULT WINAPI BalBaseBAFunctionsProc(
100
case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXEBEGIN:
101
case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE:
102
case BA_FUNCTIONS_MESSAGE_ONPLANMSIPACKAGE:
103
+ case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONBEGIN:
104
+ case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE:
105
+ case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN:
106
+ case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE:
107
+ case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN:
108
+ case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE:
109
+ case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN:
110
+ case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE:
111
+ case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN:
112
+ case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
113
hr = BalBaseBootstrapperApplicationProc((BOOTSTRAPPER_APPLICATION_MESSAGE)message, pvArgs, pvResults, pvContext);
114
break;
115
case BA_FUNCTIONS_MESSAGE_ONTHEMELOADED:
src/balutil/inc/BalBaseBootstrapperApplication.h
+75
@@ -798,6 +798,81 @@ public: // IBootstrapperApplication
798
return S_OK;
799
}
800
801
+ virtual STDMETHODIMP OnBeginMsiTransactionBegin(
802
+ __in_z LPCWSTR /*wzTransactionId*/,
803
+ __inout BOOL* pfCancel
804
+ )
805
+ {
806
+ *pfCancel |= CheckCanceled();
807
+ return S_OK;
808
+ }
809
+
810
+ virtual STDMETHODIMP OnBeginMsiTransactionComplete(
811
+ __in_z LPCWSTR /*wzTransactionId*/,
812
+ __in HRESULT /*hrStatus*/
813
+ )
814
+ {
815
+ return S_OK;
816
+ }
817
+
818
+ virtual STDMETHODIMP OnCommitMsiTransactionBegin(
819
+ __in_z LPCWSTR /*wzTransactionId*/,
820
+ __inout BOOL* pfCancel
821
+ )
822
+ {
823
+ *pfCancel |= CheckCanceled();
824
+ return S_OK;
825
+ }
826
+
827
+ virtual STDMETHODIMP OnCommitMsiTransactionComplete(
828
+ __in_z LPCWSTR /*wzTransactionId*/,
829
+ __in HRESULT /*hrStatus*/
830
+ )
831
+ {
832
+ return S_OK;
833
+ }
834
+
835
+ virtual STDMETHODIMP OnRollbackMsiTransactionBegin(
836
+ __in_z LPCWSTR /*wzTransactionId*/
837
+ )
838
+ {
839
+ return S_OK;
840
+ }
841
+
842
+ virtual STDMETHODIMP OnRollbackMsiTransactionComplete(
843
+ __in_z LPCWSTR /*wzTransactionId*/,
844
+ __in HRESULT /*hrStatus*/
845
+ )
846
+ {
847
+ return S_OK;
848
+ }
849
+
850
+ virtual STDMETHODIMP OnPauseAutomaticUpdatesBegin(
851
+ )
852
+ {
853
+ return S_OK;
854
+ }
855
+
856
+ virtual STDMETHODIMP OnPauseAutomaticUpdatesComplete(
857
+ __in HRESULT /*hrStatus*/
858
+ )
859
+ {
860
+ return S_OK;
861
+ }
862
+
863
+ virtual STDMETHODIMP OnSystemRestorePointBegin(
864
+ )
865
+ {
866
+ return S_OK;
867
+ }
868
+
869
+ virtual STDMETHODIMP OnSystemRestorePointComplete(
870
+ __in HRESULT /*hrStatus*/
871
+ )
872
+ {
873
+ return S_OK;
874
+ }
875
+
876
virtual STDMETHODIMP_(HRESULT) BAProc(
877
__in BOOTSTRAPPER_APPLICATION_MESSAGE /*message*/,
878
__in const LPVOID /*pvArgs*/,
src/balutil/inc/BalBaseBootstrapperApplicationProc.h
+119
@@ -513,6 +513,96 @@ static HRESULT BalBaseBAProcOnPlanMsiPackage(
513
return pBA->OnPlanMsiPackage(pArgs->wzPackageId, pArgs->fExecute, pArgs->action, &pResults->fCancel, &pResults->actionMsiProperty, &pResults->uiLevel, &pResults->fDisableExternalUiHandler);
514
}
515
516
+static HRESULT BalBaseBAProcOnBeginMsiTransactionBegin(
517
+ __in IBootstrapperApplication* pBA,
518
+ __in BA_ONBEGINMSITRANSACTIONBEGIN_ARGS* pArgs,
519
+ __inout BA_ONBEGINMSITRANSACTIONBEGIN_RESULTS* pResults
520
+ )
521
+{
522
+ return pBA->OnBeginMsiTransactionBegin(pArgs->wzTransactionId, &pResults->fCancel);
523
+}
524
+
525
+static HRESULT BalBaseBAProcOnBeginMsiTransactionComplete(
526
+ __in IBootstrapperApplication* pBA,
527
+ __in BA_ONBEGINMSITRANSACTIONCOMPLETE_ARGS* pArgs,
528
+ __inout BA_ONBEGINMSITRANSACTIONCOMPLETE_RESULTS* /*pResults*/
529
+ )
530
+{
531
+ return pBA->OnBeginMsiTransactionComplete(pArgs->wzTransactionId, pArgs->hrStatus);
532
+}
533
+
534
+static HRESULT BalBaseBAProcOnCommitMsiTransactionBegin(
535
+ __in IBootstrapperApplication* pBA,
536
+ __in BA_ONCOMMITMSITRANSACTIONBEGIN_ARGS* pArgs,
537
+ __inout BA_ONCOMMITMSITRANSACTIONBEGIN_RESULTS* pResults
538
+ )
539
+{
540
+ return pBA->OnCommitMsiTransactionBegin(pArgs->wzTransactionId, &pResults->fCancel);
541
+}
542
+
543
+static HRESULT BalBaseBAProcOnCommitMsiTransactionComplete(
544
+ __in IBootstrapperApplication* pBA,
545
+ __in BA_ONCOMMITMSITRANSACTIONCOMPLETE_ARGS* pArgs,
546
+ __inout BA_ONCOMMITMSITRANSACTIONCOMPLETE_RESULTS* /*pResults*/
547
+ )
548
+{
549
+ return pBA->OnCommitMsiTransactionComplete(pArgs->wzTransactionId, pArgs->hrStatus);
550
+}
551
+
552
+static HRESULT BalBaseBAProcOnRollbackMsiTransactionBegin(
553
+ __in IBootstrapperApplication* pBA,
554
+ __in BA_ONROLLBACKMSITRANSACTIONBEGIN_ARGS* pArgs,
555
+ __inout BA_ONROLLBACKMSITRANSACTIONBEGIN_RESULTS* /*pResults*/
556
+ )
557
+{
558
+ return pBA->OnRollbackMsiTransactionBegin(pArgs->wzTransactionId);
559
+}
560
+
561
+static HRESULT BalBaseBAProcOnRollbackMsiTransactionComplete(
562
+ __in IBootstrapperApplication* pBA,
563
+ __in BA_ONROLLBACKMSITRANSACTIONCOMPLETE_ARGS* pArgs,
564
+ __inout BA_ONROLLBACKMSITRANSACTIONCOMPLETE_RESULTS* /*pResults*/
565
+ )
566
+{
567
+ return pBA->OnRollbackMsiTransactionComplete(pArgs->wzTransactionId, pArgs->hrStatus);
568
+}
569
+
570
+static HRESULT BalBaseBAProcOnPauseAutomaticUpdatesBegin(
571
+ __in IBootstrapperApplication* pBA,
572
+ __in BA_ONPAUSEAUTOMATICUPDATESBEGIN_ARGS* /*pArgs*/,
573
+ __inout BA_ONPAUSEAUTOMATICUPDATESBEGIN_RESULTS* /*pResults*/
574
+ )
575
+{
576
+ return pBA->OnPauseAutomaticUpdatesBegin();
577
+}
578
+
579
+static HRESULT BalBaseBAProcOnPauseAutomaticUpdatesComplete(
580
+ __in IBootstrapperApplication* pBA,
581
+ __in BA_ONPAUSEAUTOMATICUPDATESCOMPLETE_ARGS* pArgs,
582
+ __inout BA_ONPAUSEAUTOMATICUPDATESCOMPLETE_RESULTS* /*pResults*/
583
+ )
584
+{
585
+ return pBA->OnPauseAutomaticUpdatesComplete(pArgs->hrStatus);
586
+}
587
+
588
+static HRESULT BalBaseBAProcOnSystemRestorePointBegin(
589
+ __in IBootstrapperApplication* pBA,
590
+ __in BA_ONSYSTEMRESTOREPOINTBEGIN_ARGS* /*pArgs*/,
591
+ __inout BA_ONSYSTEMRESTOREPOINTBEGIN_RESULTS* /*pResults*/
592
+ )
593
+{
594
+ return pBA->OnSystemRestorePointBegin();
595
+}
596
+
597
+static HRESULT BalBaseBAProcOnSystemRestorePointComplete(
598
+ __in IBootstrapperApplication* pBA,
599
+ __in BA_ONSYSTEMRESTOREPOINTCOMPLETE_ARGS* pArgs,
600
+ __inout BA_ONSYSTEMRESTOREPOINTCOMPLETE_RESULTS* /*pResults*/
601
+ )
602
+{
603
+ return pBA->OnSystemRestorePointComplete(pArgs->hrStatus);
604
+}
605
+
606
/*******************************************************************
607
BalBaseBootstrapperApplicationProc - requires pvContext to be of type IBootstrapperApplication.
608
Provides a default mapping between the new message based BA interface and
@@ -701,6 +791,35 @@ static HRESULT WINAPI BalBaseBootstrapperApplicationProc(
791
case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANMSIPACKAGE:
792
hr = BalBaseBAProcOnPlanMsiPackage(pBA, reinterpret_cast<BA_ONPLANMSIPACKAGE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANMSIPACKAGE_RESULTS*>(pvResults));
793
break;
794
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONBEGINMSITRANSACTIONBEGIN:
795
+ hr = BalBaseBAProcOnBeginMsiTransactionBegin(pBA, reinterpret_cast<BA_ONBEGINMSITRANSACTIONBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONBEGINMSITRANSACTIONBEGIN_RESULTS*>(pvResults));
796
+ break;
797
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE:
798
+ hr = BalBaseBAProcOnBeginMsiTransactionComplete(pBA, reinterpret_cast<BA_ONBEGINMSITRANSACTIONCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONBEGINMSITRANSACTIONCOMPLETE_RESULTS*>(pvResults));
799
+ break;
800
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN:
801
+ hr = BalBaseBAProcOnCommitMsiTransactionBegin(pBA, reinterpret_cast<BA_ONCOMMITMSITRANSACTIONBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONCOMMITMSITRANSACTIONBEGIN_RESULTS*>(pvResults));
802
+ break;
803
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE:
804
+ hr = BalBaseBAProcOnCommitMsiTransactionComplete(pBA, reinterpret_cast<BA_ONCOMMITMSITRANSACTIONCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONCOMMITMSITRANSACTIONCOMPLETE_RESULTS*>(pvResults));
805
+ break;
806
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN:
807
+ hr = BalBaseBAProcOnRollbackMsiTransactionBegin(pBA, reinterpret_cast<BA_ONROLLBACKMSITRANSACTIONBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONROLLBACKMSITRANSACTIONBEGIN_RESULTS*>(pvResults));
808
+ break;
809
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE:
810
+ hr = BalBaseBAProcOnRollbackMsiTransactionComplete(pBA, reinterpret_cast<BA_ONROLLBACKMSITRANSACTIONCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONROLLBACKMSITRANSACTIONCOMPLETE_RESULTS*>(pvResults));
811
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN:
812
+ hr = BalBaseBAProcOnPauseAutomaticUpdatesBegin(pBA, reinterpret_cast<BA_ONPAUSEAUTOMATICUPDATESBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONPAUSEAUTOMATICUPDATESBEGIN_RESULTS*>(pvResults));
813
+ break;
814
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE:
815
+ hr = BalBaseBAProcOnPauseAutomaticUpdatesComplete(pBA, reinterpret_cast<BA_ONPAUSEAUTOMATICUPDATESCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONPAUSEAUTOMATICUPDATESCOMPLETE_RESULTS*>(pvResults));
816
+ break;
817
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN:
818
+ hr = BalBaseBAProcOnSystemRestorePointBegin(pBA, reinterpret_cast<BA_ONSYSTEMRESTOREPOINTBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONSYSTEMRESTOREPOINTBEGIN_RESULTS*>(pvResults));
819
+ break;
820
+ case BOOTSTRAPPER_APPLICATION_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
821
+ hr = BalBaseBAProcOnSystemRestorePointComplete(pBA, reinterpret_cast<BA_ONSYSTEMRESTOREPOINTCOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONSYSTEMRESTOREPOINTCOMPLETE_RESULTS*>(pvResults));
822
+ break;
823
}
824
}
825
src/balutil/inc/IBootstrapperApplication.h
+43
@@ -518,6 +518,49 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
518
__in DWORD dwProcessId
519
) = 0;
520
521
+ STDMETHOD(OnBeginMsiTransactionBegin)(
522
+ __in_z LPCWSTR wzTransactionId,
523
+ __inout BOOL* pfCancel
524
+ ) = 0;
525
+
526
+ STDMETHOD(OnBeginMsiTransactionComplete)(
527
+ __in_z LPCWSTR wzTransactionId,
528
+ __in HRESULT hrStatus
529
+ ) = 0;
530
+
531
+ STDMETHOD(OnCommitMsiTransactionBegin)(
532
+ __in_z LPCWSTR wzTransactionId,
533
+ __inout BOOL* pfCancel
534
+ ) = 0;
535
+
536
+ STDMETHOD(OnCommitMsiTransactionComplete)(
537
+ __in_z LPCWSTR wzTransactionId,
538
+ __in HRESULT hrStatus
539
+ ) = 0;
540
+
541
+ STDMETHOD(OnRollbackMsiTransactionBegin)(
542
+ __in_z LPCWSTR wzTransactionId
543
+ ) = 0;
544
+
545
+ STDMETHOD(OnRollbackMsiTransactionComplete)(
546
+ __in_z LPCWSTR wzTransactionId,
547
+ __in HRESULT hrStatus
548
+ ) = 0;
549
+
550
+ STDMETHOD(OnPauseAutomaticUpdatesBegin)(
551
+ ) = 0;
552
+
553
+ STDMETHOD(OnPauseAutomaticUpdatesComplete)(
554
+ __in HRESULT hrStatus
555
+ ) = 0;
556
+
557
+ STDMETHOD(OnSystemRestorePointBegin)(
558
+ ) = 0;
559
+
560
+ STDMETHOD(OnSystemRestorePointComplete)(
561
+ __in HRESULT hrStatus
562
+ ) = 0;
563
+
564
// BAProc - The PFN_BOOTSTRAPPER_APPLICATION_PROC can call this method to give the BA raw access to the callback from the engine.
565
// This might be used to help the BA support more than one version of the engine.
566
STDMETHOD(BAProc)(
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.38" targetFramework="native" />
5
- <package id="WixToolset.DUtil" version="4.0.55" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.54" targetFramework="native" />
5
+ <package id="WixToolset.DUtil" version="4.0.56" 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.38\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props')" />
6
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" />
5
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" />
6
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.56\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.38\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props'))" />
91
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props'))" />
90
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props'))" />
91
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.56\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.38" targetFramework="native" />
5
- <package id="WixToolset.DUtil" version="4.0.55" targetFramework="native" />
4
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.54" targetFramework="native" />
5
+ <package id="WixToolset.DUtil" version="4.0.56" targetFramework="native" />
6
</packages>
\ No newline at end of file
src/mbanative/mbanative.vcxproj
+4
-4
@@ -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.38\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props')" />
9
- <Import Project="..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" />
8
+ <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" />
9
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" />
10
11
<ItemGroup Label="ProjectConfigurations">
12
<ProjectConfiguration Include="Debug|ARM64">
@@ -94,7 +94,7 @@
94
<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'))" />
95
<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'))" />
96
<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.38\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props'))" />
98
- <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props'))" />
97
+ <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props'))" />
98
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props'))" />
99
</Target>
100
</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.38" targetFramework="native" />
8
- <package id="WixToolset.DUtil" version="4.0.55" targetFramework="native" />
7
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.54" targetFramework="native" />
8
+ <package id="WixToolset.DUtil" version="4.0.56" targetFramework="native" />
9
</packages>
\ No newline at end of file
src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj
+4
-4
@@ -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.38\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props')" />
8
- <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" />
7
+ <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" />
8
+ <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" />
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
11
<Configuration>Debug</Configuration>
@@ -67,7 +67,7 @@
67
</PropertyGroup>
68
<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'))" />
69
<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.38\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props'))" />
71
- <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props'))" />
70
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props'))" />
71
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props'))" />
72
</Target>
73
</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.38" targetFramework="native" />
14
- <package id="WixToolset.DUtil" version="4.0.55" targetFramework="native" />
13
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.54" targetFramework="native" />
14
+ <package id="WixToolset.DUtil" version="4.0.56" targetFramework="native" />
15
</packages>
\ No newline at end of file
src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj
+4
-4
@@ -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.38\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props')" />
8
- <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" />
7
+ <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" />
8
+ <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" />
9
<ItemGroup Label="ProjectConfigurations">
10
<ProjectConfiguration Include="Debug|Win32">
11
<Configuration>Debug</Configuration>
@@ -66,7 +66,7 @@
66
</PropertyGroup>
67
<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'))" />
68
<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.38\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.38\build\WixToolset.BootstrapperCore.Native.props'))" />
70
- <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.55\build\WixToolset.DUtil.props'))" />
69
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.54\build\WixToolset.BootstrapperCore.Native.props'))" />
70
+ <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.56\build\WixToolset.DUtil.props'))" />
71
</Target>
72
</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.38" targetFramework="native" />
14
- <package id="WixToolset.DUtil" version="4.0.55" targetFramework="native" />
13
+ <package id="WixToolset.BootstrapperCore.Native" version="4.0.54" targetFramework="native" />
14
+ <package id="WixToolset.DUtil" version="4.0.56" targetFramework="native" />
15
</packages>
\ No newline at end of file