WndProc Problem



  • hallo,

    ich habe von einer tutorialseite, die hier verlinkt wurde den Code:

    #define STRICT
    
    #include <windows.h>
    
    LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
    
    const char szAppName[]    = "Textausgabe im Anwendungsbereich";
    
    int WINAPI WinMain(  HINSTANCE hInstance, HINSTANCE hPrevInstance,
                         PSTR szCmdLine, int iCmdShow)
    {
       MSG        msg;
       HWND       hWnd;
       WNDCLASS   wc;
    
       wc.style               = CS_HREDRAW | CS_VREDRAW;
       wc.lpfnWndProc         = WndProc;
       wc.cbClsExtra          = 0;
       wc.cbWndExtra          = 0;
       wc.hInstance           = hInstance;
       wc.hCursor             = LoadCursor(NULL, IDC_ARROW);
       wc.hIcon               = LoadIcon(NULL, IDI_APPLICATION);
       wc.hbrBackground       = (HBRUSH) GetStockObject(WHITE_BRUSH);
       wc.lpszClassName       = szAppName;
       wc.lpszMenuName        = NULL;
    
       RegisterClass(&wc);
    
       hWnd = CreateWindow(   szAppName,
                              szAppName,
                              WS_OVERLAPPEDWINDOW,
                              CW_USEDEFAULT,
                              CW_USEDEFAULT,
                              CW_USEDEFAULT,
                              CW_USEDEFAULT,
                              NULL,
                              NULL,
                              hInstance,
                              NULL);
    
       ShowWindow(hWnd, iCmdShow);
       UpdateWindow(hWnd);
    
       while (GetMessage(&msg, NULL, 0, 0))
       {
          TranslateMessage(&msg);
          DispatchMessage(&msg);
       }
       return msg.wParam;
    }
    

    den compiliere ich mit bcc32 -tW skelett.cpp

    und bekomme diese fehler meldung:

    Error Unresolved external '__stdcall WndProc(HWND__ , unsigned int, unsigned i
    nt, long)' referenced from CDOKUMENTE UND EINSTELLUNGENMEIN USER NAMEWINCPPSKELE
    TT.OBJ
    


  • Ehm ja es bringt dir wenig eine FUnktion zu deklarieren aber nicht zu definieren.
    D.h. du musst auch schreiben was in der WndProc abgehen soll ...



  • (D)Evil schrieb:

    Ehm ja es bringt dir wenig eine FUnktion zu deklarieren aber nicht zu definieren.
    D.h. du musst auch schreiben was in der WndProc abgehen soll ...

    kannste vielleicht den richtigen Quellcode mal reinstellen?
    danke



  • Ist es dieses Tutorial?
    http://www.win-api.de/tutorials.php?tutid=3

    LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) {
    
    	switch (message) {   
    	case WM_DESTROY:
            	PostQuitMessage(0);
            	return 0;
    
    	}
    
    	return DefWindowProc(hWnd, message, wParam, lParam);
    }
    


  • soll ich es obendrüber oder drunter schreiben?



  • Das ist egal, da du die Funktion bereits oben deklariert hast, kannst du sie ruhig auch unten definieren ...


Anmelden zum Antworten