Send/Post Message hängt das Programm auf



  • Hallo

    ich möchte eine Nachrichtenschleife frühzeitig beenden, wenn eine bestimme
    Nachricht, WM_APP + 1 eintrifft.

    MSG msg;
    while (GetMessage(&msg, 0, 0, 0))
    {
    	if (msg.message == WM_APP + 1)
    		break;
    
    	TranslateMessage(&msg);
    	DispatchMessage(&msg);
    }
    

    WM_QUIT möchte ich nicht verwenden, da das Programm weiterlaufen.

    Wenn ich die Nachricht als reaktion auf z.b. WM_COMMAND sende, klappt das
    auch so wie es soll, nur wenn ich auf WM_CLOSE reagieren will, hängt sich
    das Programm in der Nachrichtenschleife, genauer in GetMessage auf.

    case WM_CLOSE:
    
    PostMessage(hWnd, WM_APP + 1, 0, 0);
    break;
    

    Wo ist der Fehler ?



  • case WM_CLOSE:
    	PostMessage(windowHandle, WM_APP + 1, 0, 0);
    	return 0; // Kein DefWindowProc
    


  • thx es klappt 🙂


Anmelden zum Antworten