xref: /trunk/main/extensions/source/ole/oledll.cxx (revision 2a97ec55)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 // MARKER(update_precomp.py): autogen include statement, do not remove
25 #include "precompiled_extensions.hxx"
26 
27 #define STRICT
28 #define _WIN32_WINNT 0x0400
29 #define _WIN32_DCOM
30 
31 #pragma warning (push,1)
32 #pragma warning (disable:4548)
33 
34 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(_STLP_DEBUG)
35 #undef _DEBUG
36 #endif
37 #ifdef __MINGW32__
38 #define _INIT_ATL_COMMON_VARS
39 #endif
40 #include <atlbase.h>
41 CComModule _Module;
42 #include <atlcom.h>
43 
44 #pragma warning (pop)
45 
46 BEGIN_OBJECT_MAP(ObjectMap)
END_OBJECT_MAP()47 END_OBJECT_MAP()
48 
49 /////////////////////////////////////////////////////////////////////////////
50 // DLL Entry Point
51 
52 extern "C"
53 BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/)
54 {
55     if (dwReason == DLL_PROCESS_ATTACH)
56     {
57         _Module.Init(ObjectMap, hInstance, NULL);
58         DisableThreadLibraryCalls(hInstance);
59     }
60     else if (dwReason == DLL_PROCESS_DETACH)
61 	{
62         _Module.Term();
63 	}
64     return TRUE;    // ok
65 }
66 
67