From: Vadim Zeitlin Date: Mon, 30 Jun 2003 21:49:00 +0000 (+0000) Subject: we can't declare WinMain() with other arguments using Borland, revert to including... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/13bdd545fb305e02f9ff4ac8048fb0e4e8f2efd5 we can't declare WinMain() with other arguments using Borland, revert to including windows.h git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/app.h b/include/wx/app.h index d01a8c6d59..64bf26e029 100644 --- a/include/wx/app.h +++ b/include/wx/app.h @@ -557,15 +557,19 @@ public: #define IMPLEMENT_WXWIN_MAIN \ int main(int argc, char **argv) { return wxEntry(argc, argv); } #elif defined(__WXMSW__) && defined(WXUSINGDLL) + // we need HINSTANCE declaration to define WinMain() + #include + #include "wx/msw/winundef.h" + #define IMPLEMENT_WXWIN_MAIN \ - extern int wxEntry(WXHINSTANCE hInstance, \ - WXHINSTANCE hPrevInstance, \ - char *pCmdLine, \ - int nCmdShow); \ - extern "C" int wxSTDCALL WinMain(WXHINSTANCE hInstance, \ - WXHINSTANCE hPrevInstance, \ - char *lpCmdLine, \ - int nCmdShow) \ + extern int wxEntry(HINSTANCE hInstance, \ + HINSTANCE hPrevInstance = NULL, \ + char *pCmdLine = NULL, \ + int nCmdShow = SW_NORMAL); \ + extern "C" int WINAPI WinMain(HINSTANCE hInstance, \ + HINSTANCE hPrevInstance, \ + char *lpCmdLine, \ + int nCmdShow) \ { \ return wxEntry(hInstance, hPrevInstance, lpCmdLine, nCmdShow); \ } diff --git a/src/msw/main.cpp b/src/msw/main.cpp index 13c6321b2b..dc59e37587 100644 --- a/src/msw/main.cpp +++ b/src/msw/main.cpp @@ -28,7 +28,6 @@ #pragma hdrstop #endif -#include "wx/init.h" #include "wx/event.h" #include "wx/app.h" #include "wx/cmdline.h" @@ -69,13 +68,13 @@ static wxChar **ConvertToStandardCommandArgs(const wxChar *p, int& argc); // Windows-specific wxEntry // ---------------------------------------------------------------------------- -int wxEntry(WXHINSTANCE hInstance, - WXHINSTANCE WXUNUSED(hPrevInstance), +int wxEntry(HINSTANCE hInstance, + HINSTANCE WXUNUSED(hPrevInstance), char *pCmdLine, int nCmdShow) { // remember the parameters Windows gave us - wxSetInstance((HINSTANCE)hInstance); + wxSetInstance(hInstance); wxApp::m_nCmdShow = nCmdShow; // parse the command line @@ -106,10 +105,7 @@ int PASCAL WinMain(HINSTANCE hInstance, LPSTR lpCmdLine, int nCmdShow) { - return wxEntry((WXHINSTANCE) hInstance, - (WXHINSTANCE) hPrevInstance, - lpCmdLine, - nCmdShow); + return wxEntry(hInstance, hPrevInstance, lpCmdLine, nCmdShow); } #else // _WINDLL @@ -127,7 +123,7 @@ DllMain(HANDLE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved)) switch (fdwReason) { case DLL_PROCESS_ATTACH: - return wxEntry((WXHINSTANCE) hModule); + return wxEntry(hModule); case DLL_PROCESS_DETACH: wxEntryCleanup();