]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/main.cpp
fix for [ 950550 ] wxChoice - wxEmptyString (wxChoice::FindString doesn't work with...
[wxWidgets.git] / src / msw / main.cpp
index fd950861b2b688b9f950a00d9a38d6f6a7eb9cd4..a8bee7283bd1ad4632b9623432e0bd2885258314 100644 (file)
 
 #include "wx/msw/private.h"
 
-// Don't implement WinMain if we're building an MFC/wxWindows hybrid app.
-#if wxUSE_MFC && !defined(NOMAIN)
-    #define NOMAIN 1
-#endif
-
 #ifdef __BORLANDC__
     // BC++ has to be special: its run-time expects the DLL entry point to be
     // named DllEntryPoint instead of the (more) standard DllMain
@@ -61,7 +56,7 @@
 
 WXDLLEXPORT int wxEntry(HINSTANCE hInstance,
                         HINSTANCE WXUNUSED(hPrevInstance),
-                        char * WXUNUSED(pCmdLine),
+                        wxCmdLineArgType WXUNUSED(pCmdLine),
                         int nCmdShow)
 {
     // remember the parameters Windows gave us
@@ -74,12 +69,18 @@ WXDLLEXPORT int wxEntry(HINSTANCE hInstance,
 
     // break the command line in words
     wxArrayString args;
+
     const wxChar *cmdLine = ::GetCommandLine();
     if ( cmdLine )
     {
         args = wxCmdLineParser::ConvertStringToArgs(cmdLine);
     }
 
+#ifdef __WXWINCE__
+    // WinCE doesn't insert the program itself, so do it ourselves.
+    args.Insert(wxGetFullModuleName(), 0);
+#endif
+
     int argc = args.GetCount();
 
     // +1 here for the terminating NULL
@@ -107,7 +108,7 @@ extern "C"
 // ----------------------------------------------------------------------------
 
 // Note that WinMain is also defined in dummy.obj, which is linked to
-// an application that is using the DLL version of wxWindows.
+// an application that is using the DLL version of wxWidgets.
 
 #if defined(_WINDLL)
 
@@ -117,7 +118,7 @@ BOOL WINAPI
 DllMain(HANDLE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved))
 {
     // Only call wxEntry if the application itself is part of the DLL.
-    // If only the wxWindows library is in the DLL, then the
+    // If only the wxWidgets library is in the DLL, then the
     // initialisation will be called when the application implicitly
     // calls WinMain.
 #ifndef WXMAKINGDLL
@@ -131,8 +132,8 @@ DllMain(HANDLE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved))
             break;
     }
 #else
-       (void)hModule;
-       (void)fdwReason;
+    (void)hModule;
+    (void)fdwReason;
 #endif // !WXMAKINGDLL
 
     return TRUE;