wo ist der fehler ?



  • Hi , wo sind die Fehler ?

    #include <windows.h>
    #include "frame.h"
    
    // Globalen
    
    bool done;
    int Spiel_Zustand;
    HWND hwnd;
    
    //Funktionen
    
    //CALLBACK Funktion
    
    LRESULT CALLBACK WindowProc(HWND hwnd , UINT message , WPARAM wparam , LPARAM lparam)
    {
        switch(message)
        {
        case WM_DESTROY :
            {
                done = true;
                PostQuitMessage (0);
                return 0;
            }break;
        case WM_KEYDOWN :
            {
    
                switch (wparam)
                {
                case VK_ESCAPE :
                    {
                        PostMessage(hwnd , WM_CLOSE,0,0);
                        return 0;
                    }break;
                }
                default:break;
            }
            return (DefWindowProc(hwnd,message,wparam,lparam));
        }
    }
    int WINAPI WinMain(HINSTANCE hInstance , HINSTANCE hprevinst , LPSTR lpcmdline , int ncmdshow)
    {
    WNDCLASSEX winclass;
    MSG message;
    const char szclassname[] = "Klassenname";
    DWORD loop_start_time;
    
    winclass.cbSize        = sizeof(WNDCLASSEX);
    winclass.style         = CS_HREDRAW | CS_VREDRAW;
    winclass.lpfnWndProc   = WindowProc;
    winclass.cbWndExtra    = 0;
    winclass.cbClsExtra    = 0;
    winclass.hInstance     = hinst;
    winclass.hIcon         = LoadIcon(NULL,IDI_APPLICATION);
    winclass.hCursor       = LoadCursor(NULL,IDC_ARROW);
    winclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    winclass.lpszMenuName  = NULL;
    winclass.lpszClassName = szclassname;
    winclass.hIconSm       = LoadIcon(NULL,IDI_APPLICATION);
    
    if(!RegisterClassEx(&winclass))
       return(0);
    
    ShowWindow(hwnd,ncmdshow);
    UpdateWindow(hwnd);
    
    done = false;
    Spiel_Zustand = SPIEL_AUSWAHL;
    
    //Phase 1:
    Spiel_Initialisieren();
    //Phase 2:
    
    //Hauptschleife////////////
    while(!done)
    {
        while(GetMessage(&message,NULL,0,0))
        {
            TranslateMessage(&message);
            DispatchMessage(&message);
        }
    
        //Startzeit der Hauptschleife
    
        loop_start_time = GetTickCount();
    
        switch(Spiel_Zustand)
        {
        case SPIEL_AUSWAHL:
            {
                Spiel_Zustand = SPIEL_START;
            }break;
        case SPIEL_START:
            {
                Spiel_Zustand = SPIEL_LAEUFT;
            }break;
        case SPIEL_LAEUFT:
            {
            }break;
        case SPIEL_NEUSTART:
            {
                Spiel_Zustand = SPIEL_START;
            }break;
        default:break;
        }
        while((GetTickCount() - loop_start_time) < 40);
    }
    //Phase 3:
    Spiel_Beenden();
    return message.wParam;
    
    }
    
    //Phase 1:
    int Spiel_Initialisieren(void)
    {
        return 1;
    }
    //Phase 3:
    int Spiel_Beenden(void)
    {
        return 1;
    }
    

    --------------------Konfiguration: zerbie rahmenprogramm - Win32 Debug--------------------
    Kompilierung läuft...
    frame.cpp
    G:\PROGRAMME\MICROSOFT VISUAL STUDIO\MyProjects\zerbie rahmenprogramm\frame.cpp(52) : error C2065: 'hinst' : nichtdeklarierter Bezeichner
    G:\PROGRAMME\MICROSOFT VISUAL STUDIO\MyProjects\zerbie rahmenprogramm\frame.cpp(52) : error C2440: '=' : 'int' kann nicht in 'struct HINSTANCE__ *' konvertiert werden
    Die Konvertierung eines ganzzahligen Typs in einen Zeigertyp erfordert ein reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
    Fehler beim Ausführen von cl.exe.

    zerbie rahmenprogramm.exe - 2 Fehler, 0 Warnung(en)



  • Zum ersten Fehler: Wenn du bei winclass.hInstance hinst eingibst, musst du auch am Anfang der Funktion WinMain hinst angeben. Du hast aber hInstance geschrieben.


Anmelden zum Antworten