]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dlmsw.cpp
don't overwrite the existing local file if we failed to open it but it does exist
[wxWidgets.git] / src / msw / dlmsw.cpp
index 923a2b5144bbb94745b3754854853f0fb8bed659..39830797dc2e31407fdcaac24f88f12481c590c6 100644 (file)
@@ -28,7 +28,7 @@
 #include "wx/msw/private.h"
 #include "wx/msw/debughlp.h"
 
-const wxChar *wxDynamicLibrary::ms_dllext = _T(".dll");
+const wxString wxDynamicLibrary::ms_dllext(_T(".dll"));
 
 // ----------------------------------------------------------------------------
 // private classes
@@ -139,9 +139,12 @@ HMODULE wxGetModuleHandle(const char *name, void *addr)
     }
 
     // Windows CE only has Unicode API, so even we have an ANSI string here, we
-    // still need to use GetModuleHandleW() there and so do it everywhere to
-    // avoid #ifdefs -- this code is not performance-critical anyhow...
-    return ::GetModuleHandle(wxString::FromAscii((char *)name));
+    // still need to use GetModuleHandleW() there
+#ifdef __WXWINCE__
+    return ::GetModuleHandleW(wxConvLibc.cMB2WC(name).data());
+#else
+    return ::GetModuleHandleA((char *)name);
+#endif
 }
 
 // ============================================================================
@@ -191,7 +194,7 @@ wxString wxVersionDLL::GetFileVersion(const wxString& filename) const
     wxString ver;
     if ( m_dll.IsLoaded() )
     {
-        wxChar *pc = wx_const_cast(wxChar *, filename.c_str());
+        wxChar *pc = wx_const_cast(wxChar *, filename.wx_str());
 
         DWORD dummy;
         DWORD sizeVerInfo = m_pfnGetFileVersionInfoSize(pc, &dummy);
@@ -278,7 +281,7 @@ wxDllType wxDynamicLibrary::GetProgramHandle()
 wxDllType
 wxDynamicLibrary::RawLoad(const wxString& libname, int WXUNUSED(flags))
 {
-    return ::LoadLibrary(libname);
+    return ::LoadLibrary(libname.wx_str());
 }
 
 /* static */