SDL in anderer Main
-
Hi,
ich kann SDL nur in der WinMain nutzen:int WINAPI WinMain(HINSTANCE hInstance, // Handle der Programminstanz
HINSTANCE hPrevInstance, // Handle der letzten Instanz
LPSTR lpCmdLine, // Kommandozeile
int nCmdShow) // Art wie das Fenster angezeigt werden sollmöchte aber gerne eine Plattforumunabhängige Main nutzen wie:
int main().Wie kann ich das in VC++6 erreichen?
-
Warum machst du nicht einfach so etwas:
#ifdef _WIN32 int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nShow) #else int main( int _argc, char *_argv[] ) #endif { return 0; }
-
Indem Du nach WINDOWS, nicht CONSOLE linkst. Schau' mal in die Projekteinstellungen. Notfalls ein neues Projekt NICHT als Win32- sondern als Konsolen-Anwendung beginnen.
Alternativ ginge auch sowas (grob aus dem Kopf):
int main(int argc, char* argv[]) { return WinMain(GetModuleHandle(NULL), NULL, GetCommandLine(NULL), SH_NORMAL); } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nShow) { // KRAM MACHEN return EXIT_CODE; }Das kannst Du nach KONSOLE oder WIN32 linken wie Du lustig bist.
-
So mach ich das
#ifdef _WIN32 #undef main #endifGruß
BigBoomer
-
vielleicht vergessen SDLmain zu linken. Je nach Compiler geht das anders, beim gcc einfach -lSDLmain angeben.
geloescht