diff options
Diffstat (limited to 'src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs')
-rw-r--r-- | src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs | 1917 |
1 files changed, 1917 insertions, 0 deletions
diff --git a/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs b/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs new file mode 100644 index 00000000..530fb1a9 --- /dev/null +++ b/src/api/burn/WixToolset.Mba.Core/IBootstrapperApplication.cs | |||
@@ -0,0 +1,1917 @@ | |||
1 | // 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 | |||
3 | namespace WixToolset.Mba.Core | ||
4 | { | ||
5 | using System; | ||
6 | using System.Runtime.InteropServices; | ||
7 | |||
8 | /// <summary> | ||
9 | /// Allows customization of the bootstrapper application. | ||
10 | /// </summary> | ||
11 | [ComImport] | ||
12 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] | ||
13 | [Guid("53C31D56-49C0-426B-AB06-099D717C67FE")] | ||
14 | public interface IBootstrapperApplication | ||
15 | { | ||
16 | /// <summary> | ||
17 | /// Low level method that is called directly from the engine. | ||
18 | /// </summary> | ||
19 | [PreserveSig] | ||
20 | [return: MarshalAs(UnmanagedType.I4)] | ||
21 | int BAProc( | ||
22 | int message, | ||
23 | IntPtr pvArgs, | ||
24 | IntPtr pvResults, | ||
25 | IntPtr pvContext | ||
26 | ); | ||
27 | |||
28 | /// <summary> | ||
29 | /// Low level method that is called directly from the engine. | ||
30 | /// </summary> | ||
31 | void BAProcFallback( | ||
32 | int message, | ||
33 | IntPtr pvArgs, | ||
34 | IntPtr pvResults, | ||
35 | ref int phr, | ||
36 | IntPtr pvContext | ||
37 | ); | ||
38 | |||
39 | /// <summary> | ||
40 | /// See <see cref="IDefaultBootstrapperApplication.Startup"/>. | ||
41 | /// </summary> | ||
42 | [PreserveSig] | ||
43 | [return: MarshalAs(UnmanagedType.I4)] | ||
44 | int OnStartup(); | ||
45 | |||
46 | /// <summary> | ||
47 | /// See <see cref="IDefaultBootstrapperApplication.Shutdown"/>. | ||
48 | /// </summary> | ||
49 | [PreserveSig] | ||
50 | [return: MarshalAs(UnmanagedType.I4)] | ||
51 | int OnShutdown(ref BOOTSTRAPPER_SHUTDOWN_ACTION action); | ||
52 | |||
53 | /// <summary> | ||
54 | /// See <see cref="IDefaultBootstrapperApplication.SystemShutdown"/>. | ||
55 | /// </summary> | ||
56 | /// <param name="dwEndSession"></param> | ||
57 | /// <param name="fCancel"></param> | ||
58 | /// <returns></returns> | ||
59 | [PreserveSig] | ||
60 | [return: MarshalAs(UnmanagedType.I4)] | ||
61 | int OnSystemShutdown( | ||
62 | [MarshalAs(UnmanagedType.U4)] EndSessionReasons dwEndSession, | ||
63 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
64 | ); | ||
65 | |||
66 | /// <summary> | ||
67 | /// See <see cref="IDefaultBootstrapperApplication.DetectBegin"/>. | ||
68 | /// </summary> | ||
69 | [PreserveSig] | ||
70 | [return: MarshalAs(UnmanagedType.I4)] | ||
71 | int OnDetectBegin( | ||
72 | [MarshalAs(UnmanagedType.Bool)] bool fCached, | ||
73 | [MarshalAs(UnmanagedType.Bool)] bool fInstalled, | ||
74 | [MarshalAs(UnmanagedType.U4)] int cPackages, | ||
75 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
76 | ); | ||
77 | |||
78 | /// <summary> | ||
79 | /// See <see cref="IDefaultBootstrapperApplication.DetectForwardCompatibleBundle"/>. | ||
80 | /// </summary> | ||
81 | /// <param name="wzBundleId"></param> | ||
82 | /// <param name="relationType"></param> | ||
83 | /// <param name="wzBundleTag"></param> | ||
84 | /// <param name="fPerMachine"></param> | ||
85 | /// <param name="wzVersion"></param> | ||
86 | /// <param name="fMissingFromCache"></param> | ||
87 | /// <param name="fCancel"></param> | ||
88 | /// <returns></returns> | ||
89 | [PreserveSig] | ||
90 | [return: MarshalAs(UnmanagedType.I4)] | ||
91 | int OnDetectForwardCompatibleBundle( | ||
92 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleId, | ||
93 | [MarshalAs(UnmanagedType.U4)] RelationType relationType, | ||
94 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleTag, | ||
95 | [MarshalAs(UnmanagedType.Bool)] bool fPerMachine, | ||
96 | [MarshalAs(UnmanagedType.LPWStr)] string wzVersion, | ||
97 | [MarshalAs(UnmanagedType.Bool)] bool fMissingFromCache, | ||
98 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
99 | ); | ||
100 | |||
101 | /// <summary> | ||
102 | /// See <see cref="IDefaultBootstrapperApplication.DetectUpdateBegin"/>. | ||
103 | /// </summary> | ||
104 | /// <param name="wzUpdateLocation"></param> | ||
105 | /// <param name="fCancel"></param> | ||
106 | /// <param name="fSkip"></param> | ||
107 | /// <returns></returns> | ||
108 | [PreserveSig] | ||
109 | [return: MarshalAs(UnmanagedType.I4)] | ||
110 | int OnDetectUpdateBegin( | ||
111 | [MarshalAs(UnmanagedType.LPWStr)] string wzUpdateLocation, | ||
112 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel, | ||
113 | [MarshalAs(UnmanagedType.Bool)] ref bool fSkip | ||
114 | ); | ||
115 | |||
116 | /// <summary> | ||
117 | /// See <see cref="IDefaultBootstrapperApplication.DetectUpdate"/>. | ||
118 | /// </summary> | ||
119 | /// <param name="wzUpdateLocation"></param> | ||
120 | /// <param name="dw64Size"></param> | ||
121 | /// <param name="wzVersion"></param> | ||
122 | /// <param name="wzTitle"></param> | ||
123 | /// <param name="wzSummary"></param> | ||
124 | /// <param name="wzContentType"></param> | ||
125 | /// <param name="wzContent"></param> | ||
126 | /// <param name="fCancel"></param> | ||
127 | /// <param name="fStopProcessingUpdates"></param> | ||
128 | /// <returns></returns> | ||
129 | [PreserveSig] | ||
130 | [return: MarshalAs(UnmanagedType.I4)] | ||
131 | int OnDetectUpdate( | ||
132 | [MarshalAs(UnmanagedType.LPWStr)] string wzUpdateLocation, | ||
133 | [MarshalAs(UnmanagedType.U8)] long dw64Size, | ||
134 | [MarshalAs(UnmanagedType.LPWStr)] string wzVersion, | ||
135 | [MarshalAs(UnmanagedType.LPWStr)] string wzTitle, | ||
136 | [MarshalAs(UnmanagedType.LPWStr)] string wzSummary, | ||
137 | [MarshalAs(UnmanagedType.LPWStr)] string wzContentType, | ||
138 | [MarshalAs(UnmanagedType.LPWStr)] string wzContent, | ||
139 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel, | ||
140 | [MarshalAs(UnmanagedType.Bool)] ref bool fStopProcessingUpdates | ||
141 | ); | ||
142 | |||
143 | /// <summary> | ||
144 | /// See <see cref="IDefaultBootstrapperApplication.DetectUpdateComplete"/>. | ||
145 | /// </summary> | ||
146 | /// <param name="hrStatus"></param> | ||
147 | /// <param name="fIgnoreError"></param> | ||
148 | /// <returns></returns> | ||
149 | [PreserveSig] | ||
150 | [return: MarshalAs(UnmanagedType.I4)] | ||
151 | int OnDetectUpdateComplete( | ||
152 | int hrStatus, | ||
153 | [MarshalAs(UnmanagedType.Bool)] ref bool fIgnoreError | ||
154 | ); | ||
155 | |||
156 | /// <summary> | ||
157 | /// See <see cref="IDefaultBootstrapperApplication.DetectRelatedBundle"/>. | ||
158 | /// </summary> | ||
159 | /// <param name="wzBundleId"></param> | ||
160 | /// <param name="relationType"></param> | ||
161 | /// <param name="wzBundleTag"></param> | ||
162 | /// <param name="fPerMachine"></param> | ||
163 | /// <param name="wzVersion"></param> | ||
164 | /// <param name="operation"></param> | ||
165 | /// <param name="fMissingFromCache"></param> | ||
166 | /// <param name="fCancel"></param> | ||
167 | /// <returns></returns> | ||
168 | [PreserveSig] | ||
169 | [return: MarshalAs(UnmanagedType.I4)] | ||
170 | int OnDetectRelatedBundle( | ||
171 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleId, | ||
172 | [MarshalAs(UnmanagedType.U4)] RelationType relationType, | ||
173 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleTag, | ||
174 | [MarshalAs(UnmanagedType.Bool)] bool fPerMachine, | ||
175 | [MarshalAs(UnmanagedType.LPWStr)] string wzVersion, | ||
176 | [MarshalAs(UnmanagedType.U4)] RelatedOperation operation, | ||
177 | [MarshalAs(UnmanagedType.Bool)] bool fMissingFromCache, | ||
178 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
179 | ); | ||
180 | |||
181 | /// <summary> | ||
182 | /// See <see cref="IDefaultBootstrapperApplication.DetectPackageBegin"/>. | ||
183 | /// </summary> | ||
184 | /// <param name="wzPackageId"></param> | ||
185 | /// <param name="fCancel"></param> | ||
186 | /// <returns></returns> | ||
187 | [PreserveSig] | ||
188 | [return: MarshalAs(UnmanagedType.I4)] | ||
189 | int OnDetectPackageBegin( | ||
190 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
191 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
192 | ); | ||
193 | |||
194 | /// <summary> | ||
195 | /// See <see cref="IDefaultBootstrapperApplication.DetectRelatedMsiPackage"/>. | ||
196 | /// </summary> | ||
197 | /// <param name="wzPackageId"></param> | ||
198 | /// <param name="wzUpgradeCode"></param> | ||
199 | /// <param name="wzProductCode"></param> | ||
200 | /// <param name="fPerMachine"></param> | ||
201 | /// <param name="wzVersion"></param> | ||
202 | /// <param name="operation"></param> | ||
203 | /// <param name="fCancel"></param> | ||
204 | /// <returns></returns> | ||
205 | [PreserveSig] | ||
206 | [return: MarshalAs(UnmanagedType.I4)] | ||
207 | int OnDetectRelatedMsiPackage( | ||
208 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
209 | [MarshalAs(UnmanagedType.LPWStr)] string wzUpgradeCode, | ||
210 | [MarshalAs(UnmanagedType.LPWStr)] string wzProductCode, | ||
211 | [MarshalAs(UnmanagedType.Bool)] bool fPerMachine, | ||
212 | [MarshalAs(UnmanagedType.LPWStr)] string wzVersion, | ||
213 | [MarshalAs(UnmanagedType.U4)] RelatedOperation operation, | ||
214 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
215 | ); | ||
216 | |||
217 | /// <summary> | ||
218 | /// See <see cref="IDefaultBootstrapperApplication.DetectPatchTarget"/>. | ||
219 | /// </summary> | ||
220 | /// <param name="wzPackageId"></param> | ||
221 | /// <param name="wzProductCode"></param> | ||
222 | /// <param name="patchState"></param> | ||
223 | /// <param name="fCancel"></param> | ||
224 | /// <returns></returns> | ||
225 | [PreserveSig] | ||
226 | [return: MarshalAs(UnmanagedType.I4)] | ||
227 | int OnDetectPatchTarget( | ||
228 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
229 | [MarshalAs(UnmanagedType.LPWStr)] string wzProductCode, | ||
230 | [MarshalAs(UnmanagedType.U4)] PackageState patchState, | ||
231 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
232 | ); | ||
233 | |||
234 | /// <summary> | ||
235 | /// See <see cref="IDefaultBootstrapperApplication.DetectMsiFeature"/>. | ||
236 | /// </summary> | ||
237 | /// <param name="wzPackageId"></param> | ||
238 | /// <param name="wzFeatureId"></param> | ||
239 | /// <param name="state"></param> | ||
240 | /// <param name="fCancel"></param> | ||
241 | /// <returns></returns> | ||
242 | [PreserveSig] | ||
243 | [return: MarshalAs(UnmanagedType.I4)] | ||
244 | int OnDetectMsiFeature( | ||
245 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
246 | [MarshalAs(UnmanagedType.LPWStr)] string wzFeatureId, | ||
247 | [MarshalAs(UnmanagedType.U4)] FeatureState state, | ||
248 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
249 | ); | ||
250 | |||
251 | /// <summary> | ||
252 | /// See <see cref="IDefaultBootstrapperApplication.DetectPackageComplete"/>. | ||
253 | /// </summary> | ||
254 | [PreserveSig] | ||
255 | [return: MarshalAs(UnmanagedType.I4)] | ||
256 | int OnDetectPackageComplete( | ||
257 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
258 | int hrStatus, | ||
259 | [MarshalAs(UnmanagedType.U4)] PackageState state, | ||
260 | [MarshalAs(UnmanagedType.Bool)] bool fCached | ||
261 | ); | ||
262 | |||
263 | /// <summary> | ||
264 | /// See <see cref="IDefaultBootstrapperApplication.DetectComplete"/>. | ||
265 | /// </summary> | ||
266 | /// <param name="hrStatus"></param> | ||
267 | /// <param name="fEligibleForCleanup"></param> | ||
268 | /// <returns></returns> | ||
269 | [PreserveSig] | ||
270 | [return: MarshalAs(UnmanagedType.I4)] | ||
271 | int OnDetectComplete( | ||
272 | int hrStatus, | ||
273 | [MarshalAs(UnmanagedType.Bool)] bool fEligibleForCleanup | ||
274 | ); | ||
275 | |||
276 | /// <summary> | ||
277 | /// See <see cref="IDefaultBootstrapperApplication.PlanBegin"/>. | ||
278 | /// </summary> | ||
279 | /// <param name="cPackages"></param> | ||
280 | /// <param name="fCancel"></param> | ||
281 | /// <returns></returns> | ||
282 | [PreserveSig] | ||
283 | [return: MarshalAs(UnmanagedType.I4)] | ||
284 | int OnPlanBegin( | ||
285 | [MarshalAs(UnmanagedType.U4)] int cPackages, | ||
286 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
287 | ); | ||
288 | |||
289 | /// <summary> | ||
290 | /// See <see cref="IDefaultBootstrapperApplication.PlanRelatedBundle"/>. | ||
291 | /// </summary> | ||
292 | /// <param name="wzBundleId"></param> | ||
293 | /// <param name="recommendedState"></param> | ||
294 | /// <param name="pRequestedState"></param> | ||
295 | /// <param name="fCancel"></param> | ||
296 | /// <returns></returns> | ||
297 | [PreserveSig] | ||
298 | [return: MarshalAs(UnmanagedType.I4)] | ||
299 | int OnPlanRelatedBundle( | ||
300 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleId, | ||
301 | [MarshalAs(UnmanagedType.U4)] RequestState recommendedState, | ||
302 | [MarshalAs(UnmanagedType.U4)] ref RequestState pRequestedState, | ||
303 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
304 | ); | ||
305 | |||
306 | /// <summary> | ||
307 | /// See <see cref="IDefaultBootstrapperApplication.PlanPackageBegin"/>. | ||
308 | /// </summary> | ||
309 | [PreserveSig] | ||
310 | [return: MarshalAs(UnmanagedType.I4)] | ||
311 | int OnPlanPackageBegin( | ||
312 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
313 | [MarshalAs(UnmanagedType.U4)] PackageState state, | ||
314 | [MarshalAs(UnmanagedType.Bool)] bool fCached, | ||
315 | [MarshalAs(UnmanagedType.U4)] BOOTSTRAPPER_PACKAGE_CONDITION_RESULT installCondition, | ||
316 | [MarshalAs(UnmanagedType.U4)] RequestState recommendedState, | ||
317 | [MarshalAs(UnmanagedType.U4)] BOOTSTRAPPER_CACHE_TYPE recommendedCacheType, | ||
318 | [MarshalAs(UnmanagedType.U4)] ref RequestState pRequestedState, | ||
319 | [MarshalAs(UnmanagedType.U4)] ref BOOTSTRAPPER_CACHE_TYPE pRequestedCacheType, | ||
320 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
321 | ); | ||
322 | |||
323 | /// <summary> | ||
324 | /// See <see cref="IDefaultBootstrapperApplication.PlanPatchTarget"/>. | ||
325 | /// </summary> | ||
326 | /// <param name="wzPackageId"></param> | ||
327 | /// <param name="wzProductCode"></param> | ||
328 | /// <param name="recommendedState"></param> | ||
329 | /// <param name="pRequestedState"></param> | ||
330 | /// <param name="fCancel"></param> | ||
331 | /// <returns></returns> | ||
332 | [PreserveSig] | ||
333 | [return: MarshalAs(UnmanagedType.I4)] | ||
334 | int OnPlanPatchTarget( | ||
335 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
336 | [MarshalAs(UnmanagedType.LPWStr)] string wzProductCode, | ||
337 | [MarshalAs(UnmanagedType.U4)] RequestState recommendedState, | ||
338 | [MarshalAs(UnmanagedType.U4)] ref RequestState pRequestedState, | ||
339 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
340 | ); | ||
341 | |||
342 | /// <summary> | ||
343 | /// See <see cref="IDefaultBootstrapperApplication.PlanMsiFeature"/>. | ||
344 | /// </summary> | ||
345 | /// <param name="wzPackageId"></param> | ||
346 | /// <param name="wzFeatureId"></param> | ||
347 | /// <param name="recommendedState"></param> | ||
348 | /// <param name="pRequestedState"></param> | ||
349 | /// <param name="fCancel"></param> | ||
350 | /// <returns></returns> | ||
351 | [PreserveSig] | ||
352 | [return: MarshalAs(UnmanagedType.I4)] | ||
353 | int OnPlanMsiFeature( | ||
354 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
355 | [MarshalAs(UnmanagedType.LPWStr)] string wzFeatureId, | ||
356 | [MarshalAs(UnmanagedType.U4)] FeatureState recommendedState, | ||
357 | [MarshalAs(UnmanagedType.U4)] ref FeatureState pRequestedState, | ||
358 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
359 | ); | ||
360 | |||
361 | /// <summary> | ||
362 | /// See <see cref="IDefaultBootstrapperApplication.PlanMsiPackage"/>. | ||
363 | /// </summary> | ||
364 | /// <param name="wzPackageId"></param> | ||
365 | /// <param name="fExecute"></param> | ||
366 | /// <param name="action"></param> | ||
367 | /// <param name="fCancel"></param> | ||
368 | /// <param name="actionMsiProperty"></param> | ||
369 | /// <param name="uiLevel"></param> | ||
370 | /// <param name="fDisableExternalUiHandler"></param> | ||
371 | /// <returns></returns> | ||
372 | [PreserveSig] | ||
373 | [return: MarshalAs(UnmanagedType.I4)] | ||
374 | int OnPlanMsiPackage( | ||
375 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
376 | [MarshalAs(UnmanagedType.Bool)] bool fExecute, | ||
377 | [MarshalAs(UnmanagedType.U4)] ActionState action, | ||
378 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel, | ||
379 | [MarshalAs(UnmanagedType.U4)] ref BURN_MSI_PROPERTY actionMsiProperty, | ||
380 | [MarshalAs(UnmanagedType.U4)] ref INSTALLUILEVEL uiLevel, | ||
381 | [MarshalAs(UnmanagedType.Bool)] ref bool fDisableExternalUiHandler | ||
382 | ); | ||
383 | |||
384 | /// <summary> | ||
385 | /// See <see cref="IDefaultBootstrapperApplication.PlanPackageComplete"/>. | ||
386 | /// </summary> | ||
387 | /// <param name="wzPackageId"></param> | ||
388 | /// <param name="hrStatus"></param> | ||
389 | /// <param name="requested"></param> | ||
390 | /// <returns></returns> | ||
391 | [PreserveSig] | ||
392 | [return: MarshalAs(UnmanagedType.I4)] | ||
393 | int OnPlanPackageComplete( | ||
394 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
395 | int hrStatus, | ||
396 | [MarshalAs(UnmanagedType.U4)] RequestState requested | ||
397 | ); | ||
398 | |||
399 | /// <summary> | ||
400 | /// See <see cref="IDefaultBootstrapperApplication.PlannedPackage"/>. | ||
401 | /// </summary> | ||
402 | [PreserveSig] | ||
403 | [return: MarshalAs(UnmanagedType.I4)] | ||
404 | int OnPlannedPackage( | ||
405 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
406 | [MarshalAs(UnmanagedType.U4)] ActionState execute, | ||
407 | [MarshalAs(UnmanagedType.U4)] ActionState rollback, | ||
408 | [MarshalAs(UnmanagedType.Bool)] bool fPlannedCache, | ||
409 | [MarshalAs(UnmanagedType.Bool)] bool fPlannedUncache | ||
410 | ); | ||
411 | |||
412 | /// <summary> | ||
413 | /// See <see cref="IDefaultBootstrapperApplication.PlanComplete"/>. | ||
414 | /// </summary> | ||
415 | /// <param name="hrStatus"></param> | ||
416 | /// <returns></returns> | ||
417 | [PreserveSig] | ||
418 | [return: MarshalAs(UnmanagedType.I4)] | ||
419 | int OnPlanComplete( | ||
420 | int hrStatus | ||
421 | ); | ||
422 | |||
423 | /// <summary> | ||
424 | /// See <see cref="IDefaultBootstrapperApplication.ApplyBegin"/>. | ||
425 | /// </summary> | ||
426 | /// <param name="dwPhaseCount"></param> | ||
427 | /// <param name="fCancel"></param> | ||
428 | /// <returns></returns> | ||
429 | [PreserveSig] | ||
430 | [return: MarshalAs(UnmanagedType.I4)] | ||
431 | int OnApplyBegin( | ||
432 | [MarshalAs(UnmanagedType.U4)] int dwPhaseCount, | ||
433 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
434 | ); | ||
435 | |||
436 | /// <summary> | ||
437 | /// See <see cref="IDefaultBootstrapperApplication.ElevateBegin"/>. | ||
438 | /// </summary> | ||
439 | /// <param name="fCancel"></param> | ||
440 | /// <returns></returns> | ||
441 | [PreserveSig] | ||
442 | [return: MarshalAs(UnmanagedType.I4)] | ||
443 | int OnElevateBegin( | ||
444 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
445 | ); | ||
446 | |||
447 | /// <summary> | ||
448 | /// See <see cref="IDefaultBootstrapperApplication.ElevateComplete"/>. | ||
449 | /// </summary> | ||
450 | /// <param name="hrStatus"></param> | ||
451 | /// <returns></returns> | ||
452 | [PreserveSig] | ||
453 | [return: MarshalAs(UnmanagedType.I4)] | ||
454 | int OnElevateComplete( | ||
455 | int hrStatus | ||
456 | ); | ||
457 | |||
458 | /// <summary> | ||
459 | /// See <see cref="IDefaultBootstrapperApplication.Progress"/>. | ||
460 | /// </summary> | ||
461 | /// <param name="dwProgressPercentage"></param> | ||
462 | /// <param name="dwOverallPercentage"></param> | ||
463 | /// <param name="fCancel"></param> | ||
464 | /// <returns></returns> | ||
465 | [PreserveSig] | ||
466 | [return: MarshalAs(UnmanagedType.I4)] | ||
467 | int OnProgress( | ||
468 | [MarshalAs(UnmanagedType.U4)] int dwProgressPercentage, | ||
469 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
470 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
471 | ); | ||
472 | |||
473 | /// <summary> | ||
474 | /// See <see cref="IDefaultBootstrapperApplication.Error"/>. | ||
475 | /// </summary> | ||
476 | /// <param name="errorType"></param> | ||
477 | /// <param name="wzPackageId"></param> | ||
478 | /// <param name="dwCode"></param> | ||
479 | /// <param name="wzError"></param> | ||
480 | /// <param name="dwUIHint"></param> | ||
481 | /// <param name="cData"></param> | ||
482 | /// <param name="rgwzData"></param> | ||
483 | /// <param name="nRecommendation"></param> | ||
484 | /// <param name="pResult"></param> | ||
485 | /// <returns></returns> | ||
486 | [PreserveSig] | ||
487 | [return: MarshalAs(UnmanagedType.I4)] | ||
488 | int OnError( | ||
489 | [MarshalAs(UnmanagedType.U4)] ErrorType errorType, | ||
490 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
491 | [MarshalAs(UnmanagedType.U4)] int dwCode, | ||
492 | [MarshalAs(UnmanagedType.LPWStr)] string wzError, | ||
493 | [MarshalAs(UnmanagedType.I4)] int dwUIHint, | ||
494 | [MarshalAs(UnmanagedType.U4)] int cData, | ||
495 | [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 5, ArraySubType = UnmanagedType.LPWStr), In] string[] rgwzData, | ||
496 | [MarshalAs(UnmanagedType.I4)] Result nRecommendation, | ||
497 | [MarshalAs(UnmanagedType.I4)] ref Result pResult | ||
498 | ); | ||
499 | |||
500 | /// <summary> | ||
501 | /// See <see cref="IDefaultBootstrapperApplication.RegisterBegin"/>. | ||
502 | /// </summary> | ||
503 | /// <param name="fCancel"></param> | ||
504 | /// <returns></returns> | ||
505 | [PreserveSig] | ||
506 | [return: MarshalAs(UnmanagedType.I4)] | ||
507 | int OnRegisterBegin( | ||
508 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
509 | ); | ||
510 | |||
511 | /// <summary> | ||
512 | /// See <see cref="IDefaultBootstrapperApplication.RegisterComplete"/>. | ||
513 | /// </summary> | ||
514 | /// <param name="hrStatus"></param> | ||
515 | /// <returns></returns> | ||
516 | [PreserveSig] | ||
517 | [return: MarshalAs(UnmanagedType.I4)] | ||
518 | int OnRegisterComplete( | ||
519 | int hrStatus | ||
520 | ); | ||
521 | |||
522 | /// <summary> | ||
523 | /// See <see cref="IDefaultBootstrapperApplication.CacheBegin"/>. | ||
524 | /// </summary> | ||
525 | /// <param name="fCancel"></param> | ||
526 | /// <returns></returns> | ||
527 | [PreserveSig] | ||
528 | [return: MarshalAs(UnmanagedType.I4)] | ||
529 | int OnCacheBegin( | ||
530 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
531 | ); | ||
532 | |||
533 | /// <summary> | ||
534 | /// See <see cref="IDefaultBootstrapperApplication.CachePackageBegin"/>. | ||
535 | /// </summary> | ||
536 | /// <param name="wzPackageId"></param> | ||
537 | /// <param name="cCachePayloads"></param> | ||
538 | /// <param name="dw64PackageCacheSize"></param> | ||
539 | /// <param name="fCancel"></param> | ||
540 | /// <returns></returns> | ||
541 | [PreserveSig] | ||
542 | [return: MarshalAs(UnmanagedType.I4)] | ||
543 | int OnCachePackageBegin( | ||
544 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
545 | [MarshalAs(UnmanagedType.U4)] int cCachePayloads, | ||
546 | [MarshalAs(UnmanagedType.U8)] long dw64PackageCacheSize, | ||
547 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
548 | ); | ||
549 | |||
550 | /// <summary> | ||
551 | /// See <see cref="IDefaultBootstrapperApplication.CacheAcquireBegin"/>. | ||
552 | /// </summary> | ||
553 | [PreserveSig] | ||
554 | [return: MarshalAs(UnmanagedType.I4)] | ||
555 | int OnCacheAcquireBegin( | ||
556 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
557 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
558 | [MarshalAs(UnmanagedType.LPWStr)] string wzSource, | ||
559 | [MarshalAs(UnmanagedType.LPWStr)] string wzDownloadUrl, | ||
560 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadContainerId, | ||
561 | [MarshalAs(UnmanagedType.U4)] CacheOperation recommendation, | ||
562 | [MarshalAs(UnmanagedType.I4)] ref CacheOperation action, | ||
563 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
564 | ); | ||
565 | |||
566 | /// <summary> | ||
567 | /// See <see cref="IDefaultBootstrapperApplication.CacheAcquireProgress"/>. | ||
568 | /// </summary> | ||
569 | [PreserveSig] | ||
570 | [return: MarshalAs(UnmanagedType.I4)] | ||
571 | int OnCacheAcquireProgress( | ||
572 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
573 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
574 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
575 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
576 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
577 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
578 | ); | ||
579 | |||
580 | /// <summary> | ||
581 | /// See <see cref="IDefaultBootstrapperApplication.CacheAcquireResolving"/>. | ||
582 | /// </summary> | ||
583 | [PreserveSig] | ||
584 | [return: MarshalAs(UnmanagedType.I4)] | ||
585 | int OnCacheAcquireResolving( | ||
586 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
587 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
588 | [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 3, ArraySubType = UnmanagedType.LPWStr), In] string[] searchPaths, | ||
589 | [MarshalAs(UnmanagedType.U4)] int cSearchPaths, | ||
590 | [MarshalAs(UnmanagedType.Bool)] bool fFoundLocal, | ||
591 | [MarshalAs(UnmanagedType.U4)] int dwRecommendedSearchPath, | ||
592 | [MarshalAs(UnmanagedType.LPWStr)] string wzDownloadUrl, | ||
593 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadContainerId, | ||
594 | [MarshalAs(UnmanagedType.I4)] CacheResolveOperation recommendation, | ||
595 | [MarshalAs(UnmanagedType.U4)] ref int dwChosenSearchPath, | ||
596 | [MarshalAs(UnmanagedType.I4)] ref CacheResolveOperation action, | ||
597 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
598 | ); | ||
599 | |||
600 | /// <summary> | ||
601 | /// See <see cref="IDefaultBootstrapperApplication.CacheAcquireComplete"/>. | ||
602 | /// </summary> | ||
603 | [PreserveSig] | ||
604 | [return: MarshalAs(UnmanagedType.I4)] | ||
605 | int OnCacheAcquireComplete( | ||
606 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
607 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
608 | int hrStatus, | ||
609 | BOOTSTRAPPER_CACHEACQUIRECOMPLETE_ACTION recommendation, | ||
610 | ref BOOTSTRAPPER_CACHEACQUIRECOMPLETE_ACTION pAction | ||
611 | ); | ||
612 | |||
613 | /// <summary> | ||
614 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyBegin"/>. | ||
615 | /// </summary> | ||
616 | [PreserveSig] | ||
617 | [return: MarshalAs(UnmanagedType.I4)] | ||
618 | int OnCacheVerifyBegin( | ||
619 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
620 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
621 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
622 | ); | ||
623 | |||
624 | /// <summary> | ||
625 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyProgress"/>. | ||
626 | /// </summary> | ||
627 | [PreserveSig] | ||
628 | [return: MarshalAs(UnmanagedType.I4)] | ||
629 | int OnCacheVerifyProgress( | ||
630 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
631 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
632 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
633 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
634 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
635 | [MarshalAs(UnmanagedType.I4)] CacheVerifyStep verifyStep, | ||
636 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
637 | ); | ||
638 | |||
639 | /// <summary> | ||
640 | /// See <see cref="IDefaultBootstrapperApplication.CacheVerifyComplete"/>. | ||
641 | /// </summary> | ||
642 | [PreserveSig] | ||
643 | [return: MarshalAs(UnmanagedType.I4)] | ||
644 | int OnCacheVerifyComplete( | ||
645 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
646 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
647 | int hrStatus, | ||
648 | BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION recommendation, | ||
649 | ref BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION action | ||
650 | ); | ||
651 | |||
652 | /// <summary> | ||
653 | /// See <see cref="IDefaultBootstrapperApplication.CachePackageComplete"/>. | ||
654 | /// </summary> | ||
655 | /// <param name="wzPackageId"></param> | ||
656 | /// <param name="hrStatus"></param> | ||
657 | /// <param name="recommendation"></param> | ||
658 | /// <param name="action"></param> | ||
659 | /// <returns></returns> | ||
660 | [PreserveSig] | ||
661 | [return: MarshalAs(UnmanagedType.I4)] | ||
662 | int OnCachePackageComplete( | ||
663 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
664 | int hrStatus, | ||
665 | BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION recommendation, | ||
666 | ref BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION action | ||
667 | ); | ||
668 | |||
669 | /// <summary> | ||
670 | /// See <see cref="IDefaultBootstrapperApplication.CacheComplete"/>. | ||
671 | /// </summary> | ||
672 | /// <param name="hrStatus"></param> | ||
673 | /// <returns></returns> | ||
674 | [PreserveSig] | ||
675 | [return: MarshalAs(UnmanagedType.I4)] | ||
676 | int OnCacheComplete( | ||
677 | int hrStatus | ||
678 | ); | ||
679 | |||
680 | /// <summary> | ||
681 | /// See <see cref="IDefaultBootstrapperApplication.ExecuteBegin"/>. | ||
682 | /// </summary> | ||
683 | /// <param name="cExecutingPackages"></param> | ||
684 | /// <param name="fCancel"></param> | ||
685 | /// <returns></returns> | ||
686 | [PreserveSig] | ||
687 | [return: MarshalAs(UnmanagedType.I4)] | ||
688 | int OnExecuteBegin( | ||
689 | [MarshalAs(UnmanagedType.U4)] int cExecutingPackages, | ||
690 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
691 | ); | ||
692 | |||
693 | /// <summary> | ||
694 | /// See <see cref="IDefaultBootstrapperApplication.ExecutePackageBegin"/>. | ||
695 | /// </summary> | ||
696 | /// <param name="wzPackageId"></param> | ||
697 | /// <param name="fExecute"></param> | ||
698 | /// <param name="action"></param> | ||
699 | /// <param name="uiLevel"></param> | ||
700 | /// <param name="fDisableExternalUiHandler"></param> | ||
701 | /// <param name="fCancel"></param> | ||
702 | /// <returns></returns> | ||
703 | [PreserveSig] | ||
704 | [return: MarshalAs(UnmanagedType.I4)] | ||
705 | int OnExecutePackageBegin( | ||
706 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
707 | [MarshalAs(UnmanagedType.Bool)] bool fExecute, | ||
708 | [MarshalAs(UnmanagedType.U4)] ActionState action, | ||
709 | [MarshalAs(UnmanagedType.U4)] INSTALLUILEVEL uiLevel, | ||
710 | [MarshalAs(UnmanagedType.Bool)] bool fDisableExternalUiHandler, | ||
711 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
712 | ); | ||
713 | |||
714 | /// <summary> | ||
715 | /// See <see cref="IDefaultBootstrapperApplication.ExecutePatchTarget"/>. | ||
716 | /// </summary> | ||
717 | /// <param name="wzPackageId"></param> | ||
718 | /// <param name="wzTargetProductCode"></param> | ||
719 | /// <param name="fCancel"></param> | ||
720 | /// <returns></returns> | ||
721 | [PreserveSig] | ||
722 | [return: MarshalAs(UnmanagedType.I4)] | ||
723 | int OnExecutePatchTarget( | ||
724 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
725 | [MarshalAs(UnmanagedType.LPWStr)] string wzTargetProductCode, | ||
726 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
727 | ); | ||
728 | |||
729 | /// <summary> | ||
730 | /// See <see cref="IDefaultBootstrapperApplication.ExecuteProgress"/>. | ||
731 | /// </summary> | ||
732 | /// <param name="wzPackageId"></param> | ||
733 | /// <param name="dwProgressPercentage"></param> | ||
734 | /// <param name="dwOverallPercentage"></param> | ||
735 | /// <param name="fCancel"></param> | ||
736 | /// <returns></returns> | ||
737 | [PreserveSig] | ||
738 | [return: MarshalAs(UnmanagedType.I4)] | ||
739 | int OnExecuteProgress( | ||
740 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
741 | [MarshalAs(UnmanagedType.U4)] int dwProgressPercentage, | ||
742 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
743 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
744 | ); | ||
745 | |||
746 | /// <summary> | ||
747 | /// See <see cref="IDefaultBootstrapperApplication.ExecuteMsiMessage"/>. | ||
748 | /// </summary> | ||
749 | /// <param name="wzPackageId"></param> | ||
750 | /// <param name="messageType"></param> | ||
751 | /// <param name="dwUIHint"></param> | ||
752 | /// <param name="wzMessage"></param> | ||
753 | /// <param name="cData"></param> | ||
754 | /// <param name="rgwzData"></param> | ||
755 | /// <param name="nRecommendation"></param> | ||
756 | /// <param name="pResult"></param> | ||
757 | /// <returns></returns> | ||
758 | [PreserveSig] | ||
759 | [return: MarshalAs(UnmanagedType.I4)] | ||
760 | int OnExecuteMsiMessage( | ||
761 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
762 | [MarshalAs(UnmanagedType.U4)] InstallMessage messageType, | ||
763 | [MarshalAs(UnmanagedType.I4)] int dwUIHint, | ||
764 | [MarshalAs(UnmanagedType.LPWStr)] string wzMessage, | ||
765 | [MarshalAs(UnmanagedType.U4)] int cData, | ||
766 | [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 4, ArraySubType = UnmanagedType.LPWStr), In] string[] rgwzData, | ||
767 | [MarshalAs(UnmanagedType.I4)] Result nRecommendation, | ||
768 | [MarshalAs(UnmanagedType.I4)] ref Result pResult | ||
769 | ); | ||
770 | |||
771 | /// <summary> | ||
772 | /// See <see cref="IDefaultBootstrapperApplication.ExecuteFilesInUse"/>. | ||
773 | /// </summary> | ||
774 | /// <param name="wzPackageId"></param> | ||
775 | /// <param name="cFiles"></param> | ||
776 | /// <param name="rgwzFiles"></param> | ||
777 | /// <param name="nRecommendation"></param> | ||
778 | /// <param name="pResult"></param> | ||
779 | /// <returns></returns> | ||
780 | [PreserveSig] | ||
781 | [return: MarshalAs(UnmanagedType.I4)] | ||
782 | int OnExecuteFilesInUse( | ||
783 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
784 | [MarshalAs(UnmanagedType.U4)] int cFiles, | ||
785 | [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1, ArraySubType = UnmanagedType.LPWStr), In] string[] rgwzFiles, | ||
786 | [MarshalAs(UnmanagedType.I4)] Result nRecommendation, | ||
787 | [MarshalAs(UnmanagedType.I4)] ref Result pResult | ||
788 | ); | ||
789 | |||
790 | /// <summary> | ||
791 | /// See <see cref="IDefaultBootstrapperApplication.ExecutePackageComplete"/>. | ||
792 | /// </summary> | ||
793 | /// <param name="wzPackageId"></param> | ||
794 | /// <param name="hrStatus"></param> | ||
795 | /// <param name="restart"></param> | ||
796 | /// <param name="recommendation"></param> | ||
797 | /// <param name="pAction"></param> | ||
798 | /// <returns></returns> | ||
799 | [PreserveSig] | ||
800 | [return: MarshalAs(UnmanagedType.I4)] | ||
801 | int OnExecutePackageComplete( | ||
802 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
803 | int hrStatus, | ||
804 | [MarshalAs(UnmanagedType.U4)] ApplyRestart restart, | ||
805 | [MarshalAs(UnmanagedType.I4)] BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION recommendation, | ||
806 | [MarshalAs(UnmanagedType.I4)] ref BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION pAction | ||
807 | ); | ||
808 | |||
809 | /// <summary> | ||
810 | /// See <see cref="IDefaultBootstrapperApplication.ExecuteComplete"/>. | ||
811 | /// </summary> | ||
812 | /// <param name="hrStatus"></param> | ||
813 | /// <returns></returns> | ||
814 | [PreserveSig] | ||
815 | [return: MarshalAs(UnmanagedType.I4)] | ||
816 | int OnExecuteComplete( | ||
817 | int hrStatus | ||
818 | ); | ||
819 | |||
820 | /// <summary> | ||
821 | /// See <see cref="IDefaultBootstrapperApplication.UnregisterBegin"/>. | ||
822 | /// </summary> | ||
823 | /// <param name="fKeepRegistration"></param> | ||
824 | /// <param name="fForceKeepRegistration"></param> | ||
825 | /// <returns></returns> | ||
826 | [PreserveSig] | ||
827 | [return: MarshalAs(UnmanagedType.I4)] | ||
828 | int OnUnregisterBegin( | ||
829 | [MarshalAs(UnmanagedType.Bool)] bool fKeepRegistration, | ||
830 | [MarshalAs(UnmanagedType.Bool)] ref bool fForceKeepRegistration | ||
831 | ); | ||
832 | |||
833 | /// <summary> | ||
834 | /// See <see cref="IDefaultBootstrapperApplication.UnregisterComplete"/>. | ||
835 | /// </summary> | ||
836 | /// <param name="hrStatus"></param> | ||
837 | /// <returns></returns> | ||
838 | [PreserveSig] | ||
839 | [return: MarshalAs(UnmanagedType.I4)] | ||
840 | int OnUnregisterComplete( | ||
841 | int hrStatus | ||
842 | ); | ||
843 | |||
844 | /// <summary> | ||
845 | /// See <see cref="IDefaultBootstrapperApplication.ApplyComplete"/>. | ||
846 | /// </summary> | ||
847 | /// <param name="hrStatus"></param> | ||
848 | /// <param name="restart"></param> | ||
849 | /// <param name="recommendation"></param> | ||
850 | /// <param name="pAction"></param> | ||
851 | /// <returns></returns> | ||
852 | [PreserveSig] | ||
853 | [return: MarshalAs(UnmanagedType.I4)] | ||
854 | int OnApplyComplete( | ||
855 | int hrStatus, | ||
856 | [MarshalAs(UnmanagedType.U4)] ApplyRestart restart, | ||
857 | [MarshalAs(UnmanagedType.I4)] BOOTSTRAPPER_APPLYCOMPLETE_ACTION recommendation, | ||
858 | [MarshalAs(UnmanagedType.I4)] ref BOOTSTRAPPER_APPLYCOMPLETE_ACTION pAction | ||
859 | ); | ||
860 | |||
861 | /// <summary> | ||
862 | /// See <see cref="IDefaultBootstrapperApplication.LaunchApprovedExeBegin"/>. | ||
863 | /// </summary> | ||
864 | /// <param name="fCancel"></param> | ||
865 | /// <returns></returns> | ||
866 | [PreserveSig] | ||
867 | [return: MarshalAs(UnmanagedType.I4)] | ||
868 | int OnLaunchApprovedExeBegin( | ||
869 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
870 | ); | ||
871 | |||
872 | /// <summary> | ||
873 | /// See <see cref="IDefaultBootstrapperApplication.LaunchApprovedExeComplete"/>. | ||
874 | /// </summary> | ||
875 | /// <param name="hrStatus"></param> | ||
876 | /// <param name="processId"></param> | ||
877 | /// <returns></returns> | ||
878 | [PreserveSig] | ||
879 | [return: MarshalAs(UnmanagedType.I4)] | ||
880 | int OnLaunchApprovedExeComplete( | ||
881 | int hrStatus, | ||
882 | int processId | ||
883 | ); | ||
884 | |||
885 | /// <summary> | ||
886 | /// See <see cref="IDefaultBootstrapperApplication.BeginMsiTransactionBegin"/>. | ||
887 | /// </summary> | ||
888 | /// <param name="wzTransactionId"></param> | ||
889 | /// <param name="fCancel"></param> | ||
890 | /// <returns></returns> | ||
891 | [PreserveSig] | ||
892 | [return: MarshalAs(UnmanagedType.I4)] | ||
893 | int OnBeginMsiTransactionBegin( | ||
894 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId, | ||
895 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
896 | ); | ||
897 | |||
898 | /// <summary> | ||
899 | /// See <see cref="IDefaultBootstrapperApplication.BeginMsiTransactionComplete"/>. | ||
900 | /// </summary> | ||
901 | /// <param name="wzTransactionId"></param> | ||
902 | /// <param name="hrStatus"></param> | ||
903 | /// <returns></returns> | ||
904 | [PreserveSig] | ||
905 | [return: MarshalAs(UnmanagedType.I4)] | ||
906 | int OnBeginMsiTransactionComplete( | ||
907 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId, | ||
908 | int hrStatus | ||
909 | ); | ||
910 | |||
911 | /// <summary> | ||
912 | /// See <see cref="IDefaultBootstrapperApplication.CommitMsiTransactionBegin"/>. | ||
913 | /// </summary> | ||
914 | /// <param name="wzTransactionId"></param> | ||
915 | /// <param name="fCancel"></param> | ||
916 | /// <returns></returns> | ||
917 | [PreserveSig] | ||
918 | [return: MarshalAs(UnmanagedType.I4)] | ||
919 | int OnCommitMsiTransactionBegin( | ||
920 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId, | ||
921 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
922 | ); | ||
923 | |||
924 | /// <summary> | ||
925 | /// See <see cref="IDefaultBootstrapperApplication.CommitMsiTransactionComplete"/>. | ||
926 | /// </summary> | ||
927 | /// <param name="wzTransactionId"></param> | ||
928 | /// <param name="hrStatus"></param> | ||
929 | /// <returns></returns> | ||
930 | [PreserveSig] | ||
931 | [return: MarshalAs(UnmanagedType.I4)] | ||
932 | int OnCommitMsiTransactionComplete( | ||
933 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId, | ||
934 | int hrStatus | ||
935 | ); | ||
936 | |||
937 | /// <summary> | ||
938 | /// See <see cref="IDefaultBootstrapperApplication.RollbackMsiTransactionBegin"/>. | ||
939 | /// </summary> | ||
940 | /// <param name="wzTransactionId"></param> | ||
941 | /// <returns></returns> | ||
942 | [PreserveSig] | ||
943 | [return: MarshalAs(UnmanagedType.I4)] | ||
944 | int OnRollbackMsiTransactionBegin( | ||
945 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId | ||
946 | ); | ||
947 | |||
948 | /// <summary> | ||
949 | /// See <see cref="IDefaultBootstrapperApplication.RollbackMsiTransactionComplete"/>. | ||
950 | /// </summary> | ||
951 | /// <param name="wzTransactionId"></param> | ||
952 | /// <param name="hrStatus"></param> | ||
953 | /// <returns></returns> | ||
954 | [PreserveSig] | ||
955 | [return: MarshalAs(UnmanagedType.I4)] | ||
956 | int OnRollbackMsiTransactionComplete( | ||
957 | [MarshalAs(UnmanagedType.LPWStr)] string wzTransactionId, | ||
958 | int hrStatus | ||
959 | ); | ||
960 | |||
961 | /// <summary> | ||
962 | /// See <see cref="IDefaultBootstrapperApplication.PauseAutomaticUpdatesBegin"/>. | ||
963 | /// </summary> | ||
964 | /// <returns></returns> | ||
965 | [PreserveSig] | ||
966 | [return: MarshalAs(UnmanagedType.I4)] | ||
967 | int OnPauseAutomaticUpdatesBegin( | ||
968 | ); | ||
969 | |||
970 | /// <summary> | ||
971 | /// See <see cref="IDefaultBootstrapperApplication.PauseAutomaticUpdatesComplete"/>. | ||
972 | /// </summary> | ||
973 | /// <param name="hrStatus"></param> | ||
974 | /// <returns></returns> | ||
975 | [PreserveSig] | ||
976 | [return: MarshalAs(UnmanagedType.I4)] | ||
977 | int OnPauseAutomaticUpdatesComplete( | ||
978 | int hrStatus | ||
979 | ); | ||
980 | |||
981 | /// <summary> | ||
982 | /// See <see cref="IDefaultBootstrapperApplication.SystemRestorePointBegin"/>. | ||
983 | /// </summary> | ||
984 | /// <returns></returns> | ||
985 | [PreserveSig] | ||
986 | [return: MarshalAs(UnmanagedType.I4)] | ||
987 | int OnSystemRestorePointBegin( | ||
988 | ); | ||
989 | |||
990 | /// <summary> | ||
991 | /// See <see cref="IDefaultBootstrapperApplication.SystemRestorePointComplete"/>. | ||
992 | /// </summary> | ||
993 | /// <param name="hrStatus"></param> | ||
994 | /// <returns></returns> | ||
995 | [PreserveSig] | ||
996 | [return: MarshalAs(UnmanagedType.I4)] | ||
997 | int OnSystemRestorePointComplete( | ||
998 | int hrStatus | ||
999 | ); | ||
1000 | |||
1001 | /// <summary> | ||
1002 | /// See <see cref="IDefaultBootstrapperApplication.PlanForwardCompatibleBundle"/>. | ||
1003 | /// </summary> | ||
1004 | /// <param name="wzBundleId"></param> | ||
1005 | /// <param name="relationType"></param> | ||
1006 | /// <param name="wzBundleTag"></param> | ||
1007 | /// <param name="fPerMachine"></param> | ||
1008 | /// <param name="wzVersion"></param> | ||
1009 | /// <param name="fRecommendedIgnoreBundle"></param> | ||
1010 | /// <param name="fCancel"></param> | ||
1011 | /// <param name="fIgnoreBundle"></param> | ||
1012 | /// <returns></returns> | ||
1013 | [PreserveSig] | ||
1014 | [return: MarshalAs(UnmanagedType.I4)] | ||
1015 | int OnPlanForwardCompatibleBundle( | ||
1016 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleId, | ||
1017 | [MarshalAs(UnmanagedType.U4)] RelationType relationType, | ||
1018 | [MarshalAs(UnmanagedType.LPWStr)] string wzBundleTag, | ||
1019 | [MarshalAs(UnmanagedType.Bool)] bool fPerMachine, | ||
1020 | [MarshalAs(UnmanagedType.LPWStr)] string wzVersion, | ||
1021 | [MarshalAs(UnmanagedType.Bool)] bool fRecommendedIgnoreBundle, | ||
1022 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel, | ||
1023 | [MarshalAs(UnmanagedType.Bool)] ref bool fIgnoreBundle | ||
1024 | ); | ||
1025 | |||
1026 | /// <summary> | ||
1027 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyBegin"/>. | ||
1028 | /// </summary> | ||
1029 | [PreserveSig] | ||
1030 | [return: MarshalAs(UnmanagedType.I4)] | ||
1031 | int OnCacheContainerOrPayloadVerifyBegin( | ||
1032 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
1033 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1034 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
1035 | ); | ||
1036 | |||
1037 | /// <summary> | ||
1038 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyProgress"/>. | ||
1039 | /// </summary> | ||
1040 | [PreserveSig] | ||
1041 | [return: MarshalAs(UnmanagedType.I4)] | ||
1042 | int OnCacheContainerOrPayloadVerifyProgress( | ||
1043 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
1044 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1045 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
1046 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
1047 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
1048 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
1049 | ); | ||
1050 | |||
1051 | /// <summary> | ||
1052 | /// See <see cref="IDefaultBootstrapperApplication.CacheContainerOrPayloadVerifyComplete"/>. | ||
1053 | /// </summary> | ||
1054 | [PreserveSig] | ||
1055 | [return: MarshalAs(UnmanagedType.I4)] | ||
1056 | int OnCacheContainerOrPayloadVerifyComplete( | ||
1057 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
1058 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1059 | int hrStatus | ||
1060 | ); | ||
1061 | |||
1062 | /// <summary> | ||
1063 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractBegin"/>. | ||
1064 | /// </summary> | ||
1065 | [PreserveSig] | ||
1066 | [return: MarshalAs(UnmanagedType.I4)] | ||
1067 | int OnCachePayloadExtractBegin( | ||
1068 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
1069 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1070 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
1071 | ); | ||
1072 | |||
1073 | /// <summary> | ||
1074 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractProgress"/>. | ||
1075 | /// </summary> | ||
1076 | [PreserveSig] | ||
1077 | [return: MarshalAs(UnmanagedType.I4)] | ||
1078 | int OnCachePayloadExtractProgress( | ||
1079 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, | ||
1080 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1081 | [MarshalAs(UnmanagedType.U8)] long dw64Progress, | ||
1082 | [MarshalAs(UnmanagedType.U8)] long dw64Total, | ||
1083 | [MarshalAs(UnmanagedType.U4)] int dwOverallPercentage, | ||
1084 | [MarshalAs(UnmanagedType.Bool)] ref bool fCancel | ||
1085 | ); | ||
1086 | |||
1087 | /// <summary> | ||
1088 | /// See <see cref="IDefaultBootstrapperApplication.CachePayloadExtractComplete"/>. | ||
1089 | /// </summary> | ||
1090 | [PreserveSig] | ||
1091 | [return: MarshalAs(UnmanagedType.I4)] | ||
1092 | int OnCachePayloadExtractComplete( | ||
1093 | [MarshalAs(UnmanagedType.LPWStr)] string wzPackageId, | ||
1094 | [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, | ||
1095 | int hrStatus | ||
1096 | ); | ||
1097 | } | ||
1098 | |||
1099 | /// <summary> | ||
1100 | /// The display level for the BA. | ||
1101 | /// </summary> | ||
1102 | public enum Display | ||
1103 | { | ||
1104 | /// <summary> | ||
1105 | /// | ||
1106 | /// </summary> | ||
1107 | Unknown, | ||
1108 | |||
1109 | /// <summary> | ||
1110 | /// | ||
1111 | /// </summary> | ||
1112 | Embedded, | ||
1113 | |||
1114 | /// <summary> | ||
1115 | /// | ||
1116 | /// </summary> | ||
1117 | None, | ||
1118 | |||
1119 | /// <summary> | ||
1120 | /// | ||
1121 | /// </summary> | ||
1122 | Passive, | ||
1123 | |||
1124 | /// <summary> | ||
1125 | /// | ||
1126 | /// </summary> | ||
1127 | Full, | ||
1128 | } | ||
1129 | |||
1130 | /// <summary> | ||
1131 | /// Messages from Windows Installer (msi.h). | ||
1132 | /// </summary> | ||
1133 | public enum InstallMessage | ||
1134 | { | ||
1135 | /// <summary> | ||
1136 | /// premature termination, possibly fatal OOM | ||
1137 | /// </summary> | ||
1138 | FatalExit, | ||
1139 | |||
1140 | /// <summary> | ||
1141 | /// formatted error message | ||
1142 | /// </summary> | ||
1143 | Error = 0x01000000, | ||
1144 | |||
1145 | /// <summary> | ||
1146 | /// formatted warning message | ||
1147 | /// </summary> | ||
1148 | Warning = 0x02000000, | ||
1149 | |||
1150 | /// <summary> | ||
1151 | /// user request message | ||
1152 | /// </summary> | ||
1153 | User = 0x03000000, | ||
1154 | |||
1155 | /// <summary> | ||
1156 | /// informative message for log | ||
1157 | /// </summary> | ||
1158 | Info = 0x04000000, | ||
1159 | |||
1160 | /// <summary> | ||
1161 | /// list of files in use that need to be replaced | ||
1162 | /// </summary> | ||
1163 | FilesInUse = 0x05000000, | ||
1164 | |||
1165 | /// <summary> | ||
1166 | /// request to determine a valid source location | ||
1167 | /// </summary> | ||
1168 | ResolveSource = 0x06000000, | ||
1169 | |||
1170 | /// <summary> | ||
1171 | /// insufficient disk space message | ||
1172 | /// </summary> | ||
1173 | OutOfDiskSpace = 0x07000000, | ||
1174 | |||
1175 | /// <summary> | ||
1176 | /// start of action: action name & description | ||
1177 | /// </summary> | ||
1178 | ActionStart = 0x08000000, | ||
1179 | |||
1180 | /// <summary> | ||
1181 | /// formatted data associated with individual action item | ||
1182 | /// </summary> | ||
1183 | ActionData = 0x09000000, | ||
1184 | |||
1185 | /// <summary> | ||
1186 | /// progress gauge info: units so far, total | ||
1187 | /// </summary> | ||
1188 | Progress = 0x0a000000, | ||
1189 | |||
1190 | /// <summary> | ||
1191 | /// product info for dialog: language Id, dialog caption | ||
1192 | /// </summary> | ||
1193 | CommonData = 0x0b000000, | ||
1194 | |||
1195 | /// <summary> | ||
1196 | /// sent prior to UI initialization, no string data | ||
1197 | /// </summary> | ||
1198 | Initialize = 0x0c000000, | ||
1199 | |||
1200 | /// <summary> | ||
1201 | /// sent after UI termination, no string data | ||
1202 | /// </summary> | ||
1203 | Terminate = 0x0d000000, | ||
1204 | |||
1205 | /// <summary> | ||
1206 | /// sent prior to display or authored dialog or wizard | ||
1207 | /// </summary> | ||
1208 | ShowDialog = 0x0e000000, | ||
1209 | |||
1210 | /// <summary> | ||
1211 | /// log only, to log performance number like action time | ||
1212 | /// </summary> | ||
1213 | Performance = 0x0f000000, | ||
1214 | |||
1215 | /// <summary> | ||
1216 | /// the list of apps that the user can request Restart Manager to shut down and restart | ||
1217 | /// </summary> | ||
1218 | RMFilesInUse = 0x19000000, | ||
1219 | |||
1220 | /// <summary> | ||
1221 | /// sent prior to server-side install of a product | ||
1222 | /// </summary> | ||
1223 | InstallStart = 0x1a000000, | ||
1224 | |||
1225 | /// <summary> | ||
1226 | /// sent after server-side install | ||
1227 | /// </summary> | ||
1228 | InstallEnd = 0x1B000000, | ||
1229 | } | ||
1230 | |||
1231 | /// <summary> | ||
1232 | /// The action to perform when a reboot is necessary. | ||
1233 | /// </summary> | ||
1234 | public enum Restart | ||
1235 | { | ||
1236 | /// <summary> | ||
1237 | /// | ||
1238 | /// </summary> | ||
1239 | Unknown, | ||
1240 | |||
1241 | /// <summary> | ||
1242 | /// | ||
1243 | /// </summary> | ||
1244 | Never, | ||
1245 | |||
1246 | /// <summary> | ||
1247 | /// | ||
1248 | /// </summary> | ||
1249 | Prompt, | ||
1250 | |||
1251 | /// <summary> | ||
1252 | /// | ||
1253 | /// </summary> | ||
1254 | Automatic, | ||
1255 | |||
1256 | /// <summary> | ||
1257 | /// | ||
1258 | /// </summary> | ||
1259 | Always, | ||
1260 | } | ||
1261 | |||
1262 | /// <summary> | ||
1263 | /// Result codes (based on Dialog Box Command IDs from WinUser.h). | ||
1264 | /// </summary> | ||
1265 | public enum Result | ||
1266 | { | ||
1267 | /// <summary> | ||
1268 | /// | ||
1269 | /// </summary> | ||
1270 | Error = -1, | ||
1271 | |||
1272 | /// <summary> | ||
1273 | /// | ||
1274 | /// </summary> | ||
1275 | None, | ||
1276 | |||
1277 | /// <summary> | ||
1278 | /// | ||
1279 | /// </summary> | ||
1280 | Ok, | ||
1281 | |||
1282 | /// <summary> | ||
1283 | /// | ||
1284 | /// </summary> | ||
1285 | Cancel, | ||
1286 | |||
1287 | /// <summary> | ||
1288 | /// | ||
1289 | /// </summary> | ||
1290 | Abort, | ||
1291 | |||
1292 | /// <summary> | ||
1293 | /// | ||
1294 | /// </summary> | ||
1295 | Retry, | ||
1296 | |||
1297 | /// <summary> | ||
1298 | /// | ||
1299 | /// </summary> | ||
1300 | Ignore, | ||
1301 | |||
1302 | /// <summary> | ||
1303 | /// | ||
1304 | /// </summary> | ||
1305 | Yes, | ||
1306 | |||
1307 | /// <summary> | ||
1308 | /// | ||
1309 | /// </summary> | ||
1310 | No, | ||
1311 | |||
1312 | /// <summary> | ||
1313 | /// / | ||
1314 | /// </summary> | ||
1315 | Close, | ||
1316 | |||
1317 | /// <summary> | ||
1318 | /// | ||
1319 | /// </summary> | ||
1320 | Help, | ||
1321 | |||
1322 | /// <summary> | ||
1323 | /// | ||
1324 | /// </summary> | ||
1325 | TryAgain, | ||
1326 | |||
1327 | /// <summary> | ||
1328 | /// | ||
1329 | /// </summary> | ||
1330 | Continue, | ||
1331 | } | ||
1332 | |||
1333 | /// <summary> | ||
1334 | /// Describes why a bundle or packaged is being resumed. | ||
1335 | /// </summary> | ||
1336 | public enum ResumeType | ||
1337 | { | ||
1338 | /// <summary> | ||
1339 | /// | ||
1340 | /// </summary> | ||
1341 | None, | ||
1342 | |||
1343 | /// <summary> | ||
1344 | /// Resume information exists but is invalid. | ||
1345 | /// </summary> | ||
1346 | Invalid, | ||
1347 | |||
1348 | /// <summary> | ||
1349 | /// The bundle was re-launched after an unexpected interruption. | ||
1350 | /// </summary> | ||
1351 | Interrupted, | ||
1352 | |||
1353 | /// <summary> | ||
1354 | /// A reboot is pending. | ||
1355 | /// </summary> | ||
1356 | RebootPending, | ||
1357 | |||
1358 | /// <summary> | ||
1359 | /// The bundle was re-launched after a reboot. | ||
1360 | /// </summary> | ||
1361 | Reboot, | ||
1362 | |||
1363 | /// <summary> | ||
1364 | /// The bundle was re-launched after being suspended. | ||
1365 | /// </summary> | ||
1366 | Suspend, | ||
1367 | |||
1368 | /// <summary> | ||
1369 | /// The bundle was launched from Add/Remove Programs. | ||
1370 | /// </summary> | ||
1371 | Arp, | ||
1372 | } | ||
1373 | |||
1374 | /// <summary> | ||
1375 | /// Indicates what caused the error. | ||
1376 | /// </summary> | ||
1377 | public enum ErrorType | ||
1378 | { | ||
1379 | /// <summary> | ||
1380 | /// The error occurred trying to elevate. | ||
1381 | /// </summary> | ||
1382 | Elevate, | ||
1383 | |||
1384 | /// <summary> | ||
1385 | /// The error came from the Windows Installer. | ||
1386 | /// </summary> | ||
1387 | WindowsInstaller, | ||
1388 | |||
1389 | /// <summary> | ||
1390 | /// The error came from an EXE Package. | ||
1391 | /// </summary> | ||
1392 | ExePackage, | ||
1393 | |||
1394 | /// <summary> | ||
1395 | /// The error came while trying to authenticate with an HTTP server. | ||
1396 | /// </summary> | ||
1397 | HttpServerAuthentication, | ||
1398 | |||
1399 | /// <summary> | ||
1400 | /// The error came while trying to authenticate with an HTTP proxy. | ||
1401 | /// </summary> | ||
1402 | HttpProxyAuthentication, | ||
1403 | |||
1404 | /// <summary> | ||
1405 | /// The error occurred during apply. | ||
1406 | /// </summary> | ||
1407 | Apply, | ||
1408 | }; | ||
1409 | |||
1410 | /// <summary> | ||
1411 | /// The calculated operation for the related bundle. | ||
1412 | /// </summary> | ||
1413 | public enum RelatedOperation | ||
1414 | { | ||
1415 | /// <summary> | ||
1416 | /// | ||
1417 | /// </summary> | ||
1418 | None, | ||
1419 | |||
1420 | /// <summary> | ||
1421 | /// The related bundle or package will be downgraded. | ||
1422 | /// </summary> | ||
1423 | Downgrade, | ||
1424 | |||
1425 | /// <summary> | ||
1426 | /// The related package will be upgraded as a minor revision. | ||
1427 | /// </summary> | ||
1428 | MinorUpdate, | ||
1429 | |||
1430 | /// <summary> | ||
1431 | /// The related bundle or package will be upgraded as a major revision. | ||
1432 | /// </summary> | ||
1433 | MajorUpgrade, | ||
1434 | |||
1435 | /// <summary> | ||
1436 | /// The related bundle will be removed. | ||
1437 | /// </summary> | ||
1438 | Remove, | ||
1439 | |||
1440 | /// <summary> | ||
1441 | /// The related bundle will be installed. | ||
1442 | /// </summary> | ||
1443 | Install, | ||
1444 | |||
1445 | /// <summary> | ||
1446 | /// The related bundle will be repaired. | ||
1447 | /// </summary> | ||
1448 | Repair, | ||
1449 | }; | ||
1450 | |||
1451 | /// <summary> | ||
1452 | /// The cache operation used to acquire a container or payload. | ||
1453 | /// </summary> | ||
1454 | public enum CacheOperation | ||
1455 | { | ||
1456 | /// <summary> | ||
1457 | /// There is no source available. | ||
1458 | /// </summary> | ||
1459 | None, | ||
1460 | |||
1461 | /// <summary> | ||
1462 | /// Copy the payload or container from the chosen local source. | ||
1463 | /// </summary> | ||
1464 | Copy, | ||
1465 | |||
1466 | /// <summary> | ||
1467 | /// Download the payload or container using the download URL. | ||
1468 | /// </summary> | ||
1469 | Download, | ||
1470 | |||
1471 | /// <summary> | ||
1472 | /// Extract the payload from the container. | ||
1473 | /// </summary> | ||
1474 | Extract, | ||
1475 | } | ||
1476 | |||
1477 | /// <summary> | ||
1478 | /// The source to be used to acquire a container or payload. | ||
1479 | /// </summary> | ||
1480 | public enum CacheResolveOperation | ||
1481 | { | ||
1482 | /// <summary> | ||
1483 | /// There is no source available. | ||
1484 | /// </summary> | ||
1485 | None, | ||
1486 | |||
1487 | /// <summary> | ||
1488 | /// Copy the payload or container from the chosen local source. | ||
1489 | /// </summary> | ||
1490 | Local, | ||
1491 | |||
1492 | /// <summary> | ||
1493 | /// Download the payload or container from the download URL. | ||
1494 | /// </summary> | ||
1495 | Download, | ||
1496 | |||
1497 | /// <summary> | ||
1498 | /// Extract the payload from the container. | ||
1499 | /// </summary> | ||
1500 | Container, | ||
1501 | |||
1502 | /// <summary> | ||
1503 | /// Look again for the payload or container locally. | ||
1504 | /// </summary> | ||
1505 | Retry, | ||
1506 | } | ||
1507 | |||
1508 | /// <summary> | ||
1509 | /// The current step when verifying a container or payload. | ||
1510 | /// </summary> | ||
1511 | public enum CacheVerifyStep | ||
1512 | { | ||
1513 | /// <summary> | ||
1514 | /// Copying or moving the file from the working path to the unverified path. | ||
1515 | /// Not used during Layout. | ||
1516 | /// </summary> | ||
1517 | Stage, | ||
1518 | /// <summary> | ||
1519 | /// Hashing the file. | ||
1520 | /// </summary> | ||
1521 | Hash, | ||
1522 | /// <summary> | ||
1523 | /// Copying or moving the file to the final location. | ||
1524 | /// </summary> | ||
1525 | Finalize, | ||
1526 | } | ||
1527 | |||
1528 | /// <summary> | ||
1529 | /// The restart state after a package or all packages were applied. | ||
1530 | /// </summary> | ||
1531 | public enum ApplyRestart | ||
1532 | { | ||
1533 | /// <summary> | ||
1534 | /// Package or chain does not require a restart. | ||
1535 | /// </summary> | ||
1536 | None, | ||
1537 | |||
1538 | /// <summary> | ||
1539 | /// Package or chain requires a restart but it has not been initiated yet. | ||
1540 | /// </summary> | ||
1541 | RestartRequired, | ||
1542 | |||
1543 | /// <summary> | ||
1544 | /// Package or chain has already initiated the restart. | ||
1545 | /// </summary> | ||
1546 | RestartInitiated | ||
1547 | } | ||
1548 | |||
1549 | /// <summary> | ||
1550 | /// The relation type for related bundles. | ||
1551 | /// </summary> | ||
1552 | public enum RelationType | ||
1553 | { | ||
1554 | /// <summary> | ||
1555 | /// | ||
1556 | /// </summary> | ||
1557 | None, | ||
1558 | |||
1559 | /// <summary> | ||
1560 | /// | ||
1561 | /// </summary> | ||
1562 | Detect, | ||
1563 | |||
1564 | /// <summary> | ||
1565 | /// | ||
1566 | /// </summary> | ||
1567 | Upgrade, | ||
1568 | |||
1569 | /// <summary> | ||
1570 | /// | ||
1571 | /// </summary> | ||
1572 | Addon, | ||
1573 | |||
1574 | /// <summary> | ||
1575 | /// | ||
1576 | /// </summary> | ||
1577 | Patch, | ||
1578 | |||
1579 | /// <summary> | ||
1580 | /// | ||
1581 | /// </summary> | ||
1582 | Dependent, | ||
1583 | |||
1584 | /// <summary> | ||
1585 | /// | ||
1586 | /// </summary> | ||
1587 | Update, | ||
1588 | } | ||
1589 | |||
1590 | /// <summary> | ||
1591 | /// One or more reasons why the application is requested to be closed or is being closed. | ||
1592 | /// </summary> | ||
1593 | [Flags] | ||
1594 | public enum EndSessionReasons | ||
1595 | { | ||
1596 | /// <summary> | ||
1597 | /// The system is shutting down or restarting (it is not possible to determine which event is occurring). | ||
1598 | /// </summary> | ||
1599 | Unknown, | ||
1600 | |||
1601 | /// <summary> | ||
1602 | /// The application is using a file that must be replaced, the system is being serviced, or system resources are exhausted. | ||
1603 | /// </summary> | ||
1604 | CloseApplication, | ||
1605 | |||
1606 | /// <summary> | ||
1607 | /// The application is forced to shut down. | ||
1608 | /// </summary> | ||
1609 | Critical = 0x40000000, | ||
1610 | |||
1611 | /// <summary> | ||
1612 | /// The user is logging off. | ||
1613 | /// </summary> | ||
1614 | Logoff = unchecked((int)0x80000000) | ||
1615 | } | ||
1616 | |||
1617 | /// <summary> | ||
1618 | /// The available actions for <see cref="IDefaultBootstrapperApplication.ApplyComplete"/>. | ||
1619 | /// </summary> | ||
1620 | public enum BOOTSTRAPPER_APPLYCOMPLETE_ACTION | ||
1621 | { | ||
1622 | /// <summary> | ||
1623 | /// | ||
1624 | /// </summary> | ||
1625 | None, | ||
1626 | |||
1627 | /// <summary> | ||
1628 | /// Instructs the engine to restart. | ||
1629 | /// The engine will not launch again after the machine is rebooted. | ||
1630 | /// Ignored if reboot was already initiated by <see cref="IDefaultBootstrapperApplication.ExecutePackageComplete"/>. | ||
1631 | /// </summary> | ||
1632 | Restart, | ||
1633 | } | ||
1634 | |||
1635 | /// <summary> | ||
1636 | /// The cache strategy to be used for the package. | ||
1637 | /// </summary> | ||
1638 | public enum BOOTSTRAPPER_CACHE_TYPE | ||
1639 | { | ||
1640 | /// <summary> | ||
1641 | /// The package will be cached in order to securely run the package, but will always be cleaned from the cache at the end. | ||
1642 | /// </summary> | ||
1643 | Remove, | ||
1644 | |||
1645 | /// <summary> | ||
1646 | /// The package will be cached in order to run the package, and then kept in the cache until the package is uninstalled. | ||
1647 | /// </summary> | ||
1648 | Keep, | ||
1649 | |||
1650 | /// <summary> | ||
1651 | /// The package will always be cached and stay in the cache, unless the package and bundle are both being uninstalled. | ||
1652 | /// </summary> | ||
1653 | Force, | ||
1654 | } | ||
1655 | |||
1656 | /// <summary> | ||
1657 | /// The available actions for <see cref="IDefaultBootstrapperApplication.CacheAcquireComplete"/>. | ||
1658 | /// </summary> | ||
1659 | public enum BOOTSTRAPPER_CACHEACQUIRECOMPLETE_ACTION | ||
1660 | { | ||
1661 | /// <summary> | ||
1662 | /// | ||
1663 | /// </summary> | ||
1664 | None, | ||
1665 | |||
1666 | /// <summary> | ||
1667 | /// Instructs the engine to try the acquisition of the payload again. | ||
1668 | /// Ignored if hrStatus is a success. | ||
1669 | /// </summary> | ||
1670 | Retry, | ||
1671 | } | ||
1672 | |||
1673 | /// <summary> | ||
1674 | /// The available actions for <see cref="IDefaultBootstrapperApplication.CachePackageComplete"/>. | ||
1675 | /// </summary> | ||
1676 | public enum BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION | ||
1677 | { | ||
1678 | /// <summary> | ||
1679 | /// | ||
1680 | /// </summary> | ||
1681 | None, | ||
1682 | |||
1683 | /// <summary> | ||
1684 | /// Instructs the engine to ignore non-vital package failures and continue with the caching. | ||
1685 | /// Ignored if hrStatus is a success or the package is vital. | ||
1686 | /// </summary> | ||
1687 | Ignore, | ||
1688 | |||
1689 | /// <summary> | ||
1690 | /// Instructs the engine to try the acquisition and verification of the package again. | ||
1691 | /// Ignored if hrStatus is a success. | ||
1692 | /// </summary> | ||
1693 | Retry, | ||
1694 | } | ||
1695 | |||
1696 | /// <summary> | ||
1697 | /// The available actions for <see cref="IDefaultBootstrapperApplication.CacheVerifyComplete"/>. | ||
1698 | /// </summary> | ||
1699 | public enum BOOTSTRAPPER_CACHEVERIFYCOMPLETE_ACTION | ||
1700 | { | ||
1701 | /// <summary> | ||
1702 | /// | ||
1703 | /// </summary> | ||
1704 | None, | ||
1705 | |||
1706 | /// <summary> | ||
1707 | /// Ignored if hrStatus is a success. | ||
1708 | /// </summary> | ||
1709 | RetryVerification, | ||
1710 | |||
1711 | /// <summary> | ||
1712 | /// Ignored if hrStatus is a success. | ||
1713 | /// </summary> | ||
1714 | RetryAcquisition, | ||
1715 | } | ||
1716 | |||
1717 | /// <summary> | ||
1718 | /// The available actions for <see cref="IDefaultBootstrapperApplication.ExecutePackageComplete"/>. | ||
1719 | /// </summary> | ||
1720 | public enum BOOTSTRAPPER_EXECUTEPACKAGECOMPLETE_ACTION | ||
1721 | { | ||
1722 | /// <summary> | ||
1723 | /// | ||
1724 | /// </summary> | ||
1725 | None, | ||
1726 | |||
1727 | /// <summary> | ||
1728 | /// Instructs the engine to ignore non-vital package failures and continue with the install. | ||
1729 | /// Ignored if hrStatus is a success or the package is vital. | ||
1730 | /// </summary> | ||
1731 | Ignore, | ||
1732 | |||
1733 | /// <summary> | ||
1734 | /// Instructs the engine to try the execution of the package again. | ||
1735 | /// Ignored if hrStatus is a success. | ||
1736 | /// </summary> | ||
1737 | Retry, | ||
1738 | |||
1739 | /// <summary> | ||
1740 | /// Instructs the engine to stop processing the chain and restart. | ||
1741 | /// The engine will launch again after the machine is restarted. | ||
1742 | /// </summary> | ||
1743 | Restart, | ||
1744 | |||
1745 | /// <summary> | ||
1746 | /// Instructs the engine to stop processing the chain and suspend the current state. | ||
1747 | /// </summary> | ||
1748 | Suspend, | ||
1749 | } | ||
1750 | |||
1751 | /// <summary> | ||
1752 | /// The result of evaluating a condition from a package. | ||
1753 | /// </summary> | ||
1754 | public enum BOOTSTRAPPER_PACKAGE_CONDITION_RESULT | ||
1755 | { | ||
1756 | /// <summary> | ||
1757 | /// No condition was authored. | ||
1758 | /// </summary> | ||
1759 | Default, | ||
1760 | |||
1761 | /// <summary> | ||
1762 | /// Evaluated to false. | ||
1763 | /// </summary> | ||
1764 | False, | ||
1765 | |||
1766 | /// <summary> | ||
1767 | /// Evaluated to true. | ||
1768 | /// </summary> | ||
1769 | True, | ||
1770 | } | ||
1771 | |||
1772 | /// <summary> | ||
1773 | /// The available actions for <see cref="IDefaultBootstrapperApplication.CacheAcquireResolving"/>. | ||
1774 | /// </summary> | ||
1775 | public enum BOOTSTRAPPER_RESOLVESOURCE_ACTION | ||
1776 | { | ||
1777 | /// <summary> | ||
1778 | /// Instructs the engine that the source can't be found. | ||
1779 | /// </summary> | ||
1780 | None, | ||
1781 | |||
1782 | /// <summary> | ||
1783 | /// Instructs the engine to try the local source again. | ||
1784 | /// </summary> | ||
1785 | Retry, | ||
1786 | |||
1787 | /// <summary> | ||
1788 | /// Instructs the engine to try the download source. | ||
1789 | /// </summary> | ||
1790 | Download, | ||
1791 | } | ||
1792 | |||
1793 | /// <summary> | ||
1794 | /// The available actions for <see cref="IDefaultBootstrapperApplication.Shutdown"/>. | ||
1795 | /// </summary> | ||
1796 | public enum BOOTSTRAPPER_SHUTDOWN_ACTION | ||
1797 | { | ||
1798 | /// <summary> | ||
1799 | /// | ||
1800 | /// </summary> | ||
1801 | None, | ||
1802 | |||
1803 | /// <summary> | ||
1804 | /// Instructs the engine to restart. | ||
1805 | /// The engine will not launch again after the machine is rebooted. | ||
1806 | /// Ignored if reboot was already initiated by <see cref="IDefaultBootstrapperApplication.ExecutePackageComplete"/>. | ||
1807 | /// </summary> | ||
1808 | Restart, | ||
1809 | |||
1810 | /// <summary> | ||
1811 | /// Instructs the engine to unload the bootstrapper application and | ||
1812 | /// restart the engine which will load the bootstrapper application again. | ||
1813 | /// Typically used to switch from a native bootstrapper application to a managed one. | ||
1814 | /// </summary> | ||
1815 | ReloadBootstrapper, | ||
1816 | |||
1817 | /// <summary> | ||
1818 | /// Opts out of the engine behavior of trying to uninstall itself when no non-permanent packages are installed. | ||
1819 | /// </summary> | ||
1820 | SkipCleanup, | ||
1821 | } | ||
1822 | |||
1823 | /// <summary> | ||
1824 | /// The property Burn will add so the MSI can know the planned action for the package. | ||
1825 | /// </summary> | ||
1826 | public enum BURN_MSI_PROPERTY | ||
1827 | { | ||
1828 | /// <summary> | ||
1829 | /// No property will be added. | ||
1830 | /// </summary> | ||
1831 | None, | ||
1832 | |||
1833 | /// <summary> | ||
1834 | /// Add BURNMSIINSTALL=1 | ||
1835 | /// </summary> | ||
1836 | Install, | ||
1837 | |||
1838 | /// <summary> | ||
1839 | /// Add BURNMSIMODFIY=1 | ||
1840 | /// </summary> | ||
1841 | Modify, | ||
1842 | |||
1843 | /// <summary> | ||
1844 | /// Add BURNMSIREPAIR=1 | ||
1845 | /// </summary> | ||
1846 | Repair, | ||
1847 | |||
1848 | /// <summary> | ||
1849 | /// Add BURNMSIUNINSTALL=1 | ||
1850 | /// </summary> | ||
1851 | Uninstall, | ||
1852 | } | ||
1853 | |||
1854 | /// <summary> | ||
1855 | /// From msi.h | ||
1856 | /// https://docs.microsoft.com/en-us/windows/win32/api/msi/nf-msi-msisetinternalui | ||
1857 | /// </summary> | ||
1858 | [Flags] | ||
1859 | public enum INSTALLUILEVEL | ||
1860 | { | ||
1861 | /// <summary> | ||
1862 | /// UI level is unchanged | ||
1863 | /// </summary> | ||
1864 | NoChange = 0, | ||
1865 | |||
1866 | /// <summary> | ||
1867 | /// default UI is used | ||
1868 | /// </summary> | ||
1869 | Default = 1, | ||
1870 | |||
1871 | /// <summary> | ||
1872 | /// completely silent installation | ||
1873 | /// </summary> | ||
1874 | None = 2, | ||
1875 | |||
1876 | /// <summary> | ||
1877 | /// simple progress and error handling | ||
1878 | /// </summary> | ||
1879 | Basic = 3, | ||
1880 | |||
1881 | /// <summary> | ||
1882 | /// authored UI, wizard dialogs suppressed | ||
1883 | /// </summary> | ||
1884 | Reduced = 4, | ||
1885 | |||
1886 | /// <summary> | ||
1887 | /// authored UI with wizards, progress, errors | ||
1888 | /// </summary> | ||
1889 | Full = 5, | ||
1890 | |||
1891 | /// <summary> | ||
1892 | /// display success/failure dialog at end of install | ||
1893 | /// </summary> | ||
1894 | EndDialog = 0x80, | ||
1895 | |||
1896 | /// <summary> | ||
1897 | /// display only progress dialog | ||
1898 | /// </summary> | ||
1899 | ProgressOnly = 0x40, | ||
1900 | |||
1901 | /// <summary> | ||
1902 | /// do not display the cancel button in basic UI | ||
1903 | /// </summary> | ||
1904 | HideCancel = 0x20, | ||
1905 | |||
1906 | /// <summary> | ||
1907 | /// force display of source resolution even if quiet | ||
1908 | /// </summary> | ||
1909 | SourceResOnly = 0x100, | ||
1910 | |||
1911 | /// <summary> | ||
1912 | /// show UAC prompt even if quiet | ||
1913 | /// Can only be used if on Windows Installer 5.0 or later | ||
1914 | /// </summary> | ||
1915 | UacOnly = 0x200, | ||
1916 | } | ||
1917 | } | ||