#ifdef __WINDOWS__
#include <windows.h>
-
+ #include "wx/msw/mslu.h"
+
// sys/cygwin.h is needed for cygwin_conv_to_full_win32_path()
//
// note that it must be included after <windows.h>
// instead of our code if available
//
// NB: 3rd parameter is bFailIfExists i.e. the inverse of overwrite
- return ::CopyFile(file1, file2, !overwrite) != 0;
+ if ( !::CopyFile(file1, file2, !overwrite) )
+ {
+ wxLogSysError(_("Failed to copy the file '%s' to '%s'"),
+ file1.c_str(), file2.c_str());
+
+ return FALSE;
+ }
#elif defined(__WXPM__)
- if (::DosCopy(file2, file2, overwrite ? DCPY_EXISTING : 0) == 0)
- return TRUE;
- else
+ if ( ::DosCopy(file2, file2, overwrite ? DCPY_EXISTING : 0) != 0 )
return FALSE;
#else // !Win32
wxStructStat fbuf;
return FALSE;
}
#endif // OS/2 || Mac
+#endif // __WXMSW__ && __WIN32__
return TRUE;
-#endif // __WXMSW__ && __WIN32__
}
bool
#ifdef __VISUALC__
#pragma warning(default:4706) // assignment within conditional expression
#endif // VC++
-
-//------------------------------------------------------------------------
-// Missing functions in Unicode for Win9x
-//------------------------------------------------------------------------
-
-// NB: MSLU only covers Win32 API, it doesn't provide Unicode implementation of
-// libc functions. Unfortunately, some of MSVCRT wchar_t functions
-// (e.g. _wopen) don't work on Windows 9x, so we have to workaround it
-// by calling the char version. We still want to use wchar_t version on
-// NT/2000/XP, though, because they allow for Unicode file names.
-#if wxUSE_UNICODE_MSLU
-
- #if defined( __VISUALC__ ) \
- || ( defined(__MINGW32__) && wxCHECK_W32API_VERSION( 0, 5 ) ) \
- || ( defined(__MWERKS__) && defined(__WXMSW__) )
- WXDLLEXPORT int wxOpen(const wxChar *name, int flags, int mode)
- {
- if ( wxGetOsVersion() == wxWINDOWS_NT )
- return _wopen(name, flags, mode);
- else
- return _open(wxConvFile.cWX2MB(name), flags, mode);
- }
- #endif
-
-#endif // wxUSE_UNICODE_MSLU