Ohne WinMain



  • Hallo Leute,
    folgende Frage: Wie kann ich ein Fenster mit CreateWindow erstellen, ohne ein WinMain zu haben, bzw. was für einen Parameter muss ich als HINSTANCE übergeben?
    Ich komm einfach nicht weiter.
    Danke



  • GetModuleHandle sollte gehen ...



  • Ok,danke, es geht, jetzt aber ein anderes Problem.
    Wenn ich es linke (ist ein OGL-Projekt und ich denke es handelt sich um einen Linkefehler), linke ich die
    user32, kernel32, gdi32, opengl32 und die glu32 mit dazu.
    Das Fenster, dass dann erstellt werden soll, wird aber nicht angezeigt:

    WNDCLASS wc;
    
    wc.style = CS_OWNDC;
    wc.lpfnWndProc = Proc;
    wc.cbClsExtra = 0;
    wc.cbWndExtra = 0;
    wc.hInstance = Inst;
    wc.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wc.hCursor = LoadCursor (NULL, IDC_ARROW);
    wc.hbrBackground = (HBRUSH) GetStockObject (BLACK_BRUSH);
    wc.lpszMenuName = NULL;
    wc.lpszClassName = "GLSample";
    RegisterClass (&wc);
    
    Window = CreateWindow (
          "Klassenname", "Titel",
          WS_POPUPWINDOW | WS_VISIBLE,
          0, 0,Width,Height,
          NULL, NULL, GetModuleHandle(NULL)/*Inst*/, NULL);
    
        ShowWindow(Window, SW_SHOW);
    

    Weiß einer wo der Fehler liegt?
    Danke!



  • Ja ist logisch ... "GLSample" und "Klassenname" sieht für mich nicht gleich aus 😉 Muss es aber ...



  • Ok, ja, im unteren habe ich GLSample durch Klassenname nur ersetzt, um es verständlicher zu machen, und oben hab ichs vergessen.
    Wisst ihr wo der Fehler sein könnte (evtl. Linkeroptionen)?



  • Deine WindowProc?



  • Danke, das wars


Anmelden zum Antworten