Was is in dieser funktion falsch
-
wieso PS3??
und bücher habe ich genug aber ich weis net was ich hir falsch mache
#define WINDOW_CLASS_NAME "GameShell Window" #define WIN32_LEAN_AND_MEAN //////////////////// // INCLUDES ///////////////////// #include<windows.h> //------------- //macros //------------- #define KEWDOWN(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0) #define KEYUP(vk_code) ((GetAsyncKeyState (vk_code)&0x8000)?0:1) //----------------------- //global //----------------------- HWND main_window_handle = 0; HINSTANCE hinstance_app = 0; //---------------------- //wichtige game funktions prototypen //---------------------- void Game_Shutdown(void); void Game_Init(void); void Game_Main(void); //----------------------- // funktions definitionen //------------------- LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { PAINTSTRUCT ps; HDC hdc; // NACHRICHTEN VERERBEITUNG switch(msg) { case WM_CREATE: { return(0); } break; case WM_PAINT: { hdc = BeginPaint (hwnd ,&ps); EndPaint (hwnd,&ps); return (0); } break; case WM_DESTROY: { PostQuitMessage(0); return (0); } break; default: break; } return (DefWindowProc(hwnd,msg,wparam,lparam)); } //////////////////////////////////////////////part 2 int WINAPI WinMain (HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow) { WNDCLASSEX winclass; HWND hwnd; MSG msg; //Fenster eigenschaften festlegen: winclass.cbSize =sizeof(WNDCLASSEX); winclass.style =CS_HREDRAW | CS_VREDRAW; winclass.lpfnWndProc =WindowProc; winclass.cbClsExtra =0; winclass.cbWndExtra =0; winclass.hInstance =hinstance; winclass.hIcon =LoadIcon(NULL,IDI_APPLICATION); winclass.hCursor =LoadCursor(0,IDC_ARROW); winclass.hbrBackground =(HBRUSH)GetStockObject(BLACK_BRUSH); winclass.lpszMenuName =NULL; winclass.lpszClassName =WINDOW_CLASS_NAME; winclass.hIconSm =LoadIcon(0,IDI_APPLICATION); hinstance_app = hinstance; if (!RegisterClassEx(&winclass)) return (0); if (!(hwnd =CreateWindowEx(0,WINDOW_CLASS_NAME, "MY GAME SHELL", WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0,0, 800,600, 0, 0, hinstance, NULL))) return(0); main_window_handle = hwnd; Game_Init(); while(true)//nachrichten weiterleitung { if(PeekMessage(&msg,NULL,0,0,PM_REMOVE)) { if(msg.message == WM_QUIT) break; TranslateMessage(&msg); DispatchMessage(&msg); } Game_Main(); } Game_Shutdown(); return(msg.wParam); } void Game_Init(void) { } ///////////77 void Game_Main(void) { [b]if (KEYDOWN( VK_ESCAPE ))[/b]<--Der fehler in dieser reie SendMessage(main_window_habdle,VM_CLOSE,0,0); } //////////////////aus machen void Game_Shutdown(void) { }
-
Was für ein Fehler denn?
-
Schau mal genau hin, wie dein Makro (bei der Definition!) heißt (LOL -)
-
ich persönlich löse sollche Sachen immer über die Nachrichtenschleife
switch(msg) { case WM_KEYDOWN: { //Taste ESC if(LOWORD(wparam)==27) { } } break; }Wenn du deinen Makro-Schreibfehler behoben hast, wirst in der nächsten Zeile gleich den nächsten Fehler bekommen

-
BasicMan01 schrieb:
ich persönlich löse sollche Sachen immer über die Nachrichtenschleife
Das ist manchmal aber keine Alternative zum Polling.
-
Der makro
#define KEWDOWN(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0)////////Der fehler
void Game_Main(void) { if (KEYDOWN( VK_ESCAPE ))<--Der fehler in dieser reie SendMessage(main_window_habdle,VM_CLOSE,0,0); }
-
Es muss natürlich lauten:
if (KEWDOWN( VK_ESCAPE ))
-
Jetzt is das falsch
SendMessage(main_window_habdle,VM_CLOSE,0,0);
Ich dreh gleich durch
-
ritmi schrieb:
Der makro
#define KEWDOWN(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0)////////Der fehler
void Game_Main(void) { if (KEYDOWN( VK_ESCAPE ))<--Der fehler in dieser reie SendMessage(main_window_habdle,VM_CLOSE,0,0); }Was hat das KEYDOWN-Makro mit dem KEWDOWN-Makro zu tun? Ausserdem hast Du in der Reihe, die Du kennzeichnest tatsächlich einen Fehler. Vermutest Du in der Reihe einen Fehler oder willst Du nur reiern, weil Du einen Fehler gemacht hast
.
-
ne bei devc++ zeigt es ahn ihn welcher reie der fehler ist
http://i50.tinypic.com/9tmqms.jpgHir fehlt definitiev die img bbcode
-
ritmi schrieb:
Jetzt is das falsch
SendMessage(main_window_habdle,VM_CLOSE,0,0);
Ich dreh gleich durchDa ist Microsoft wohl ein Fehler unterlaufen. Im Header steht tatsächlich WM_CLOSE statt VM_CLOSE. Am besten direkt ändern und einen Bugreport schicken, oder so!
-
BasicMan01 schrieb:
Wenn du deinen Makro-Schreibfehler behoben hast, wirst in der nächsten Zeile gleich den nächsten Fehler bekommen

Soviel zu deinem HABDLE
David_pb schrieb:
Das ist manchmal aber keine Alternative zum Polling.
Das ist wohl wahr

Bis grade eben wusste ich net mal, was Polling ist. Gut des es google gibt.
-
oki fehler behoben Dank euch:D
hab bei handle b mit n verwechselt

Danke vielmals:D
TOLLER SUPPORT Schnell und zuverlesig