Mit windows program kan ikke flyttes...

Tags:    c++ php

Hej alle

Jeg har lavet et windows program i C++, og det virker næsten. Når jeg starter loader det fint, og kommer også frem, men problemet er at det er som om at programmet er helt dødt. Jeg kan ikke flytte eller lukke programmet. Alle de controls der er i vinduet vinduer virker fint, men vinduet gør ikke. Hvis jeg trykker på "Move" (i menuen man får frem hvis man højreklikker på programmet i taskbar'en) og så flytter det så virker det fint, men når jeg så har flyttet det en gang så virker det ikke igen... her er koden til programmet:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;

ghWnd = CreateDialog (hInstance, MAKEINTRESOURCE(IDD_MAIN), NULL, WndProc);
ShowWindow (ghWnd, SW_SHOW);
UpdateWindow (ghWnd);

while (GetMessage (&msg, NULL, 0, 0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}

return msg.wParam;
}

og her er WndProc funktionen:

BOOL CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_DESTROY:
RegSave(hWnd);
PostQuitMessage (0);
break;
default:
return DefWindowProc (hWnd, uMsg, wParam, lParam);
break;
}

return (0L);
}


er der nogen der ved hvad der kan være galt?

Tak!

----------------------
Rune Svendsen
runes@hotpop.com



1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Hej alle

Jeg har lavet et windows program i C++, og det virker næsten. Når jeg starter loader det fint, og kommer også frem, men problemet er at det er som om at programmet er helt dødt. Jeg kan ikke flytte eller lukke programmet. Alle de controls der er i vinduet vinduer virker fint, men vinduet gør ikke. Hvis jeg trykker på "Move" (i menuen man får frem hvis man højreklikker på programmet i taskbar'en) og så flytter det så virker det fint, men når jeg så har flyttet det en gang så virker det ikke igen... her er koden til programmet:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;

ghWnd = CreateDialog (hInstance, MAKEINTRESOURCE(IDD_MAIN), NULL, WndProc);
ShowWindow (ghWnd, SW_SHOW);
UpdateWindow (ghWnd);

while (GetMessage (&msg, NULL, 0, 0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}

return msg.wParam;
}

og her er WndProc funktionen:

BOOL CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_DESTROY:
RegSave(hWnd);
PostQuitMessage (0);
break;
default:
return DefWindowProc (hWnd, uMsg, wParam, lParam);
break;
}

return (0L);
}


er der nogen der ved hvad der kan være galt?

Tak!

----------------------
Rune Svendsen
runes@hotpop.com




prøv at putte en PostQuitMessage(0); ned i bunden af din main funktion.




t