f5ce8a970ad4e70d4d64bf5a1de4e4567a9eb43d
[reactos.git] / dll / win32 / msftedit / msftedit_main.c
1 /*
2 * msftedit main file
3 *
4 * Copyright (C) 2008 Rico Schüller
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 *
20 */
21
22 #define WIN32_NO_STATUS
23 #define _INC_WINDOWS
24 #define COM_NO_WINDOWS_H
25
26 #include <config.h>
27 //#include "wine/port.h"
28
29 #include <stdarg.h>
30
31 #include <windef.h>
32 #include <winbase.h>
33 #include <winreg.h>
34 #include <wingdi.h>
35 #include <winuser.h>
36 #include <richedit.h>
37 #include <imm.h>
38 #include <shlwapi.h>
39 #include <oleidl.h>
40 #include <initguid.h>
41 #include <textserv.h>
42
43 #include <wine/debug.h>
44
45 WINE_DEFAULT_DEBUG_CHANNEL(msftedit);
46
47 /***********************************************************************
48 * DllMain.
49 */
50 BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved)
51 {
52 static const WCHAR riched20W[] = {'r','i','c','h','e','d','2','0','.','d','l','l',0};
53 static HMODULE richedit;
54
55 switch(reason)
56 {
57 case DLL_WINE_PREATTACH:
58 return FALSE; /* prefer native version */
59 case DLL_PROCESS_ATTACH:
60 /* explicitly load riched20 since it creates the window classes at dll attach time */
61 richedit = LoadLibraryW( riched20W );
62 DisableThreadLibraryCalls(inst);
63 break;
64 case DLL_PROCESS_DETACH:
65 FreeLibrary( richedit );
66 break;
67 }
68 return TRUE;
69 }
70
71 /***********************************************************************
72 * DllGetVersion (msftedit.@)
73 */
74 HRESULT WINAPI DllGetVersion(DLLVERSIONINFO *info)
75 {
76 if (info->cbSize != sizeof(DLLVERSIONINFO)) FIXME("support DLLVERSIONINFO2\n");
77
78 /* this is what WINXP SP2 reports */
79 info->dwMajorVersion = 41;
80 info->dwMinorVersion = 15;
81 info->dwBuildNumber = 1507;
82 info->dwPlatformID = 1;
83 return NOERROR;
84 }