aboutsummaryrefslogtreecommitdiff
path: root/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2024-01-11 18:26:20 -0800
committerRob Mensching <rob@firegiant.com>2024-03-06 18:03:38 -0800
commit0d3d54992104288e9ee0c834d0b96e8502fd2d42 (patch)
tree9efa49c4983cd2ba1becab64bd1f2faccac88acf /src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
parent2824298d9dd817a47527c920363556b54ead5d5d (diff)
downloadwix-0d3d54992104288e9ee0c834d0b96e8502fd2d42.tar.gz
wix-0d3d54992104288e9ee0c834d0b96e8502fd2d42.tar.bz2
wix-0d3d54992104288e9ee0c834d0b96e8502fd2d42.zip
Move the BootstrapperApplication out of proc
Diffstat (limited to 'src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h')
-rw-r--r--src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h180
1 files changed, 2 insertions, 178 deletions
diff --git a/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h b/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
index 728bd2b5..65eeb0b4 100644
--- a/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
+++ b/src/api/burn/balutil/inc/BalBaseBAFunctionsProc.h
@@ -1,191 +1,15 @@
1#pragma once 1#pragma once
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. 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 3
4
5#include "BalBaseBootstrapperApplicationProc.h"
6#include "BAFunctions.h"
7#include "IBAFunctions.h"
8
9static HRESULT BalBaseBAFunctionsProcOnThemeLoaded(
10 __in IBAFunctions* pBAFunctions,
11 __in BA_FUNCTIONS_ONTHEMELOADED_ARGS* pArgs,
12 __inout BA_FUNCTIONS_ONTHEMELOADED_RESULTS* /*pResults*/
13 )
14{
15 return pBAFunctions->OnThemeLoaded(pArgs->hWnd);
16}
17
18static HRESULT BalBaseBAFunctionsProcWndProc(
19 __in IBAFunctions* pBAFunctions,
20 __in BA_FUNCTIONS_WNDPROC_ARGS* pArgs,
21 __inout BA_FUNCTIONS_WNDPROC_RESULTS* pResults
22 )
23{
24 return pBAFunctions->WndProc(pArgs->hWnd, pArgs->uMsg, pArgs->wParam, pArgs->lParam, &pResults->fProcessed, &pResults->lResult);
25}
26
27static HRESULT BalBaseBAFunctionsProcOnThemeControlLoading(
28 __in IBAFunctions* pBAFunctions,
29 __in BA_FUNCTIONS_ONTHEMECONTROLLOADING_ARGS* pArgs,
30 __inout BA_FUNCTIONS_ONTHEMECONTROLLOADING_RESULTS* pResults
31 )
32{
33 return pBAFunctions->OnThemeControlLoading(pArgs->wzName, &pResults->fProcessed, &pResults->wId, &pResults->dwAutomaticBehaviorType);
34}
35
36static HRESULT BalBaseBAFunctionsProcOnThemeControlWmCommand(
37 __in IBAFunctions* pBAFunctions,
38 __in BA_FUNCTIONS_ONTHEMECONTROLWMCOMMAND_ARGS* pArgs,
39 __inout BA_FUNCTIONS_ONTHEMECONTROLWMCOMMAND_RESULTS* pResults
40 )
41{
42 return pBAFunctions->OnThemeControlWmCommand(pArgs->wParam, pArgs->wzName, pArgs->wId, pArgs->hWnd, &pResults->fProcessed, &pResults->lResult);
43}
44
45static HRESULT BalBaseBAFunctionsProcOnThemeControlWmNotify(
46 __in IBAFunctions* pBAFunctions,
47 __in BA_FUNCTIONS_ONTHEMECONTROLWMNOTIFY_ARGS* pArgs,
48 __inout BA_FUNCTIONS_ONTHEMECONTROLWMNOTIFY_RESULTS* pResults
49 )
50{
51 return pBAFunctions->OnThemeControlWmNotify(pArgs->lParam, pArgs->wzName, pArgs->wId, pArgs->hWnd, &pResults->fProcessed, &pResults->lResult);
52}
53
54static HRESULT BalBaseBAFunctionsProcOnThemeControlLoaded(
55 __in IBAFunctions* pBAFunctions,
56 __in BA_FUNCTIONS_ONTHEMECONTROLLOADED_ARGS* pArgs,
57 __inout BA_FUNCTIONS_ONTHEMECONTROLLOADED_RESULTS* pResults
58 )
59{
60 return pBAFunctions->OnThemeControlLoaded(pArgs->wzName, pArgs->wId, pArgs->hWnd, &pResults->fProcessed);
61}
62
63/******************************************************************* 4/*******************************************************************
64BalBaseBAFunctionsProc - requires pvContext to be of type IBAFunctions. 5BalBaseBAFunctionsProc - requires pvContext to be of type IBAFunctions.
65Provides a default mapping between the message based BAFunctions interface and 6Provides a default mapping between the message based BAFunctions interface and
66the COM-based BAFunctions interface. 7the COM-based BAFunctions interface.
67 8
68*******************************************************************/ 9*******************************************************************/
69static HRESULT WINAPI BalBaseBAFunctionsProc( 10HRESULT WINAPI BalBaseBAFunctionsProc(
70 __in BA_FUNCTIONS_MESSAGE message, 11 __in BA_FUNCTIONS_MESSAGE message,
71 __in const LPVOID pvArgs, 12 __in const LPVOID pvArgs,
72 __inout LPVOID pvResults, 13 __inout LPVOID pvResults,
73 __in_opt LPVOID pvContext 14 __in_opt LPVOID pvContext
74 ) 15 );
75{
76 IBAFunctions* pBAFunctions = reinterpret_cast<IBAFunctions*>(pvContext);
77 HRESULT hr = pBAFunctions->BAFunctionsProc(message, pvArgs, pvResults, pvContext);
78
79 if (E_NOTIMPL == hr)
80 {
81 switch (message)
82 {
83 case BA_FUNCTIONS_MESSAGE_ONDETECTBEGIN:
84 case BA_FUNCTIONS_MESSAGE_ONDETECTCOMPLETE:
85 case BA_FUNCTIONS_MESSAGE_ONPLANBEGIN:
86 case BA_FUNCTIONS_MESSAGE_ONPLANCOMPLETE:
87 case BA_FUNCTIONS_MESSAGE_ONSTARTUP:
88 case BA_FUNCTIONS_MESSAGE_ONSHUTDOWN:
89 case BA_FUNCTIONS_MESSAGE_ONDETECTFORWARDCOMPATIBLEBUNDLE:
90 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATEBEGIN:
91 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATE:
92 case BA_FUNCTIONS_MESSAGE_ONDETECTUPDATECOMPLETE:
93 case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDBUNDLE:
94 case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGEBEGIN:
95 case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDMSIPACKAGE:
96 case BA_FUNCTIONS_MESSAGE_ONDETECTPATCHTARGET:
97 case BA_FUNCTIONS_MESSAGE_ONDETECTMSIFEATURE:
98 case BA_FUNCTIONS_MESSAGE_ONDETECTPACKAGECOMPLETE:
99 case BA_FUNCTIONS_MESSAGE_ONPLANRELATEDBUNDLE:
100 case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGEBEGIN:
101 case BA_FUNCTIONS_MESSAGE_ONPLANPATCHTARGET:
102 case BA_FUNCTIONS_MESSAGE_ONPLANMSIFEATURE:
103 case BA_FUNCTIONS_MESSAGE_ONPLANPACKAGECOMPLETE:
104 case BA_FUNCTIONS_MESSAGE_ONAPPLYBEGIN:
105 case BA_FUNCTIONS_MESSAGE_ONELEVATEBEGIN:
106 case BA_FUNCTIONS_MESSAGE_ONELEVATECOMPLETE:
107 case BA_FUNCTIONS_MESSAGE_ONPROGRESS:
108 case BA_FUNCTIONS_MESSAGE_ONERROR:
109 case BA_FUNCTIONS_MESSAGE_ONREGISTERBEGIN:
110 case BA_FUNCTIONS_MESSAGE_ONREGISTERCOMPLETE:
111 case BA_FUNCTIONS_MESSAGE_ONCACHEBEGIN:
112 case BA_FUNCTIONS_MESSAGE_ONCACHEPACKAGEBEGIN:
113 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIREBEGIN:
114 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIREPROGRESS:
115 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIRERESOLVING:
116 case BA_FUNCTIONS_MESSAGE_ONCACHEACQUIRECOMPLETE:
117 case BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYBEGIN:
118 case BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYCOMPLETE:
119 case BA_FUNCTIONS_MESSAGE_ONCACHEPACKAGECOMPLETE:
120 case BA_FUNCTIONS_MESSAGE_ONCACHECOMPLETE:
121 case BA_FUNCTIONS_MESSAGE_ONEXECUTEBEGIN:
122 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPACKAGEBEGIN:
123 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPATCHTARGET:
124 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPROGRESS:
125 case BA_FUNCTIONS_MESSAGE_ONEXECUTEMSIMESSAGE:
126 case BA_FUNCTIONS_MESSAGE_ONEXECUTEFILESINUSE:
127 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPACKAGECOMPLETE:
128 case BA_FUNCTIONS_MESSAGE_ONEXECUTECOMPLETE:
129 case BA_FUNCTIONS_MESSAGE_ONUNREGISTERBEGIN:
130 case BA_FUNCTIONS_MESSAGE_ONUNREGISTERCOMPLETE:
131 case BA_FUNCTIONS_MESSAGE_ONAPPLYCOMPLETE:
132 case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXEBEGIN:
133 case BA_FUNCTIONS_MESSAGE_ONLAUNCHAPPROVEDEXECOMPLETE:
134 case BA_FUNCTIONS_MESSAGE_ONPLANMSIPACKAGE:
135 case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONBEGIN:
136 case BA_FUNCTIONS_MESSAGE_ONBEGINMSITRANSACTIONCOMPLETE:
137 case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONBEGIN:
138 case BA_FUNCTIONS_MESSAGE_ONCOMMITMSITRANSACTIONCOMPLETE:
139 case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONBEGIN:
140 case BA_FUNCTIONS_MESSAGE_ONROLLBACKMSITRANSACTIONCOMPLETE:
141 case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESBEGIN:
142 case BA_FUNCTIONS_MESSAGE_ONPAUSEAUTOMATICUPDATESCOMPLETE:
143 case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTBEGIN:
144 case BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE:
145 case BA_FUNCTIONS_MESSAGE_ONPLANNEDPACKAGE:
146 case BA_FUNCTIONS_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE:
147 case BA_FUNCTIONS_MESSAGE_ONCACHEVERIFYPROGRESS:
148 case BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN:
149 case BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE:
150 case BA_FUNCTIONS_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS:
151 case BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTBEGIN:
152 case BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTCOMPLETE:
153 case BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS:
154 case BA_FUNCTIONS_MESSAGE_ONPLANROLLBACKBOUNDARY:
155 case BA_FUNCTIONS_MESSAGE_ONSETUPDATEBEGIN:
156 case BA_FUNCTIONS_MESSAGE_ONSETUPDATECOMPLETE:
157 case BA_FUNCTIONS_MESSAGE_ONDETECTCOMPATIBLEMSIPACKAGE:
158 case BA_FUNCTIONS_MESSAGE_ONPLANCOMPATIBLEMSIPACKAGEBEGIN:
159 case BA_FUNCTIONS_MESSAGE_ONPLANCOMPATIBLEMSIPACKAGECOMPLETE:
160 case BA_FUNCTIONS_MESSAGE_ONPLANNEDCOMPATIBLEPACKAGE:
161 case BA_FUNCTIONS_MESSAGE_ONPLANRESTORERELATEDBUNDLE:
162 case BA_FUNCTIONS_MESSAGE_ONPLANRELATEDBUNDLETYPE:
163 case BA_FUNCTIONS_MESSAGE_ONAPPLYDOWNGRADE:
164 case BA_FUNCTIONS_MESSAGE_ONEXECUTEPROCESSCANCEL:
165 case BA_FUNCTIONS_MESSAGE_ONDETECTRELATEDBUNDLEPACKAGE:
166 case BA_FUNCTIONS_MESSAGE_ONCACHEPACKAGENONVITALVALIDATIONFAILURE:
167 hr = BalBaseBootstrapperApplicationProc((BOOTSTRAPPER_APPLICATION_MESSAGE)message, pvArgs, pvResults, pvContext);
168 break;
169 case BA_FUNCTIONS_MESSAGE_ONTHEMELOADED:
170 hr = BalBaseBAFunctionsProcOnThemeLoaded(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMELOADED_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMELOADED_RESULTS*>(pvResults));
171 break;
172 case BA_FUNCTIONS_MESSAGE_WNDPROC:
173 hr = BalBaseBAFunctionsProcWndProc(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_WNDPROC_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_WNDPROC_RESULTS*>(pvResults));
174 break;
175 case BA_FUNCTIONS_MESSAGE_ONTHEMECONTROLLOADING:
176 hr = BalBaseBAFunctionsProcOnThemeControlLoading(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLLOADING_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLLOADING_RESULTS*>(pvResults));
177 break;
178 case BA_FUNCTIONS_MESSAGE_ONTHEMECONTROLWMCOMMAND:
179 hr = BalBaseBAFunctionsProcOnThemeControlWmCommand(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLWMCOMMAND_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLWMCOMMAND_RESULTS*>(pvResults));
180 break;
181 case BA_FUNCTIONS_MESSAGE_ONTHEMECONTROLWMNOTIFY:
182 hr = BalBaseBAFunctionsProcOnThemeControlWmNotify(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLWMNOTIFY_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLWMNOTIFY_RESULTS*>(pvResults));
183 break;
184 case BA_FUNCTIONS_MESSAGE_ONTHEMECONTROLLOADED:
185 hr = BalBaseBAFunctionsProcOnThemeControlLoaded(pBAFunctions, reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLLOADED_ARGS*>(pvArgs), reinterpret_cast<BA_FUNCTIONS_ONTHEMECONTROLLOADED_RESULTS*>(pvResults));
186 break;
187 }
188 }
189
190 return hr;
191}