Funktionszeiger auf WndProc
-
Ich habe ein Problem mit einem Funktionszeiger auf eine WndProc!
Hier mein Code://header.hpp typedef LRESULT CALLBACK (*WndFunc) (HWND, UINT, WPARAM, LPARAM); BOOL CreateGLWindow(WndFunc WndProc); //main.cpp LRESULT CALLBACK WndProc( HWND hWnd, // Handle For This Window UINT uMsg, // Message For This Window WPARAM wParam, // Additional Message Information LPARAM lParam) // Additional Message Information { //... } int WINAPI WinMain( HINSTANCE hInstance, // Instance HINSTANCE hPrevInstance, // Previous Instance LPSTR lpCmdLine, // Command Line Parameters int nCmdShow) // Window Show State { CreateGLWindow(WndProc); //... }
So soll das ganze aussehen, leider meldet er mir in der obersten Zeile "error C2059: Syntaxfehler : '('", lasse ich das CALLBACK weg,
kann ich zwar diese Zeile kompilieren, aber bei der Übergabe meldet er mir dann einen fehler:error C2664: 'CreateGLWindow' : Konvertierung des Parameters 6 von 'long (struct HWND__ *,unsigned int,unsigned int,long)' in 'long (__cdecl *)(struct HWND__ *,unsigned int,unsig
ned int,long)' nicht moeglichBin für jede Hilfe dankbar.
-
es gibt bereits einen solchen funktionszeiger und der heisst WNDPROC :p
-
typedef (LRESULT CALLBACK *WndFunc) (HWND, UINT, WPARAM, LPARAM);
müsste glaub auch...
-
typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
-
Original erstellt von <!>:
es gibt bereits einen solchen funktionszeiger und der heisst WNDPROC :pDanke für die Hilfe, jetzt wird mir einiges klar ...
-
jetzt wird mir einiges klar ...
Und was wäre das?
-
Mir wird klar, dass ich nicht wusste was WNDPROC ist...