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 #include "config.h" 23 #include "wine/port.h" 24 25 #include <stdarg.h> 26 27 #include "windef.h" 28 #include "winbase.h" 29 #include "winreg.h" 30 #include "wingdi.h" 31 #include "winuser.h" 32 #include "richedit.h" 33 #include "imm.h" 34 #include "shlwapi.h" 35 #include "oleidl.h" 36 #include "initguid.h" 37 #include "textserv.h" 38 39 #include "wine/debug.h" 40 41 WINE_DEFAULT_DEBUG_CHANNEL(msftedit); 42 43 /*********************************************************************** 44 * DllMain. 45 */ 46 BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved) 47 { 48 static const WCHAR riched20W[] = {'r','i','c','h','e','d','2','0','.','d','l','l',0}; 49 static HMODULE richedit; 50 51 switch(reason) 52 { 53 case DLL_WINE_PREATTACH: 54 return FALSE; /* prefer native version */ 55 case DLL_PROCESS_ATTACH: 56 /* explicitly load riched20 since it creates the window classes at dll attach time */ 57 richedit = LoadLibraryW( riched20W ); 58 DisableThreadLibraryCalls(inst); 59 break; 60 case DLL_PROCESS_DETACH: 61 FreeLibrary( richedit ); 62 break; 63 } 64 return TRUE; 65 } 66 67 /*********************************************************************** 68 * DllGetVersion (msftedit.@) 69 */ 70 HRESULT WINAPI DllGetVersion(DLLVERSIONINFO *info) 71 { 72 if (info->cbSize != sizeof(DLLVERSIONINFO)) FIXME("support DLLVERSIONINFO2\n"); 73 74 /* this is what WINXP SP2 reports */ 75 info->dwMajorVersion = 41; 76 info->dwMinorVersion = 15; 77 info->dwBuildNumber = 1507; 78 info->dwPlatformID = 1; 79 return NOERROR; 80 } 81