1 //-------------------------------------------------------------------------------------------------
2 // <copyright file="wixstdba.cpp" company="Outercurve Foundation">
3 // Copyright (c) 2004, Outercurve Foundation.
4 // This software is released under Microsoft Reciprocal License (MS-RL).
5 // The license and further copyright text can be found in the file
6 // LICENSE.TXT at the root directory of the distribution.
7 // </copyright>
8 //
9 // <summary>
10 // Setup chainer/bootstrapper standard UI for WiX toolset.
11 // </summary>
12 //-------------------------------------------------------------------------------------------------
13
14 #include "pch.h"
15
16 static HINSTANCE vhInstance = NULL;
17
DllMain(IN HINSTANCE hInstance,IN DWORD dwReason,IN LPVOID)18 extern "C" BOOL WINAPI DllMain(
19 IN HINSTANCE hInstance,
20 IN DWORD dwReason,
21 IN LPVOID /* pvReserved */
22 )
23 {
24 switch(dwReason)
25 {
26 case DLL_PROCESS_ATTACH:
27 ::DisableThreadLibraryCalls(hInstance);
28 vhInstance = hInstance;
29 break;
30
31 case DLL_PROCESS_DETACH:
32 vhInstance = NULL;
33 break;
34 }
35
36 return TRUE;
37 }
38
39
BootstrapperApplicationCreate(__in IBootstrapperEngine * pEngine,__in const BOOTSTRAPPER_COMMAND * pCommand,__out IBootstrapperApplication ** ppApplication)40 extern "C" HRESULT WINAPI BootstrapperApplicationCreate(
41 __in IBootstrapperEngine* pEngine,
42 __in const BOOTSTRAPPER_COMMAND* pCommand,
43 __out IBootstrapperApplication** ppApplication
44 )
45 {
46 HRESULT hr = S_OK;
47
48 BalInitialize(pEngine);
49
50 hr = CreateBootstrapperApplication(vhInstance, FALSE, S_OK, pEngine, pCommand, ppApplication);
51 BalExitOnFailure(hr, "Failed to create bootstrapper application interface.");
52
53 LExit:
54 return hr;
55 }
56
57
BootstrapperApplicationDestroy()58 extern "C" void WINAPI BootstrapperApplicationDestroy()
59 {
60 BalUninitialize();
61 }
62
63
MbaPrereqBootstrapperApplicationCreate(__in HRESULT hrHostInitialization,__in IBootstrapperEngine * pEngine,__in const BOOTSTRAPPER_COMMAND * pCommand,__out IBootstrapperApplication ** ppApplication)64 extern "C" HRESULT WINAPI MbaPrereqBootstrapperApplicationCreate(
65 __in HRESULT hrHostInitialization,
66 __in IBootstrapperEngine* pEngine,
67 __in const BOOTSTRAPPER_COMMAND* pCommand,
68 __out IBootstrapperApplication** ppApplication
69 )
70 {
71 return E_NOTIMPL;
72 }
73
74
MbaPrereqBootstrapperApplicationDestroy()75 extern "C" void WINAPI MbaPrereqBootstrapperApplicationDestroy()
76 { }
77