From 50e24e9cf2084b6cb67b5d8fc509163061408bb6 Mon Sep 17 00:00:00 2001 From: Nir Bar Date: Tue, 6 Dec 2022 13:22:41 +0200 Subject: Use MSI transaction end result to detect whether reboot is needed --- .../inc/BootstrapperApplication.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/api/burn/WixToolset.BootstrapperCore.Native') diff --git a/src/api/burn/WixToolset.BootstrapperCore.Native/inc/BootstrapperApplication.h b/src/api/burn/WixToolset.BootstrapperCore.Native/inc/BootstrapperApplication.h index c65ca86b..2633a9c2 100644 --- a/src/api/burn/WixToolset.BootstrapperCore.Native/inc/BootstrapperApplication.h +++ b/src/api/burn/WixToolset.BootstrapperCore.Native/inc/BootstrapperApplication.h @@ -293,6 +293,14 @@ enum BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION_SUSPEND, }; +enum BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION +{ + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION_NONE, + // Instructs the engine to stop processing the chain and restart. + // The engine will launch again after the machine is restarted. + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION_RESTART, +}; + enum BOOTSTRAPPER_EXECUTEPROCESSCANCEL_ACTION { // Instructs the engine to stop waiting for the process to exit. @@ -697,11 +705,14 @@ struct BA_ONCOMMITMSITRANSACTIONCOMPLETE_ARGS DWORD cbSize; LPCWSTR wzTransactionId; HRESULT hrStatus; + BOOTSTRAPPER_APPLY_RESTART restart; + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION recommendation; }; struct BA_ONCOMMITMSITRANSACTIONCOMPLETE_RESULTS { DWORD cbSize; + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION action; }; struct BA_ONDETECTBEGIN_ARGS @@ -1417,11 +1428,14 @@ struct BA_ONROLLBACKMSITRANSACTIONCOMPLETE_ARGS DWORD cbSize; LPCWSTR wzTransactionId; HRESULT hrStatus; + BOOTSTRAPPER_APPLY_RESTART restart; + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION recommendation; }; struct BA_ONROLLBACKMSITRANSACTIONCOMPLETE_RESULTS { DWORD cbSize; + BOOTSTRAPPER_EXECUTEMSITRANSACTIONCOMPLETE_ACTION action; }; struct BA_ONSETUPDATEBEGIN_ARGS -- cgit v1.2.3-55-g6feb