#include "wx/scopedptr.h"
#include "wx/except.h"
-#if defined(__WXMSW__)
+#if defined(__WINDOWS__)
+ #include "wx/msw/private.h"
#include "wx/msw/msvcrt.h"
#ifdef wxCrtSetDbgFlag
}
} gs_enableLeakChecks;
#endif // wxCrtSetDbgFlag
-#endif // __WXMSW__
+#endif // __WINDOWS__
// ----------------------------------------------------------------------------
// private classes
free(gs_initData.argv[i]);
}
- delete [] gs_initData.argv;
- gs_initData.argv = NULL;
+ wxDELETEA(gs_initData.argv);
gs_initData.argc = 0;
}
}
wxLog::GetActiveTarget();
#endif // wxUSE_LOG
+#ifdef __WINDOWS__
+ // GUI applications obtain HINSTANCE in their WinMain() but we also need to
+ // initialize the global wxhInstance variable for the console programs as
+ // they may need it too, so set it here if it wasn't done yet
+ if ( !wxGetInstance() )
+ {
+ wxSetInstance(::GetModuleHandle(NULL));
+ }
+#endif // __WINDOWS__
+
return true;
}
// ----------------------------------------------------------------------------
// for MSW the real wxEntry is defined in msw/main.cpp
-#ifndef __WXMSW__
+#ifndef __WINDOWS__
#define wxEntryReal wxEntry
-#endif // !__WXMSW__
+#endif // !__WINDOWS__
int wxEntryReal(int& argc, wxChar **argv)
{