WM_Close klappt manchmal/manchmal nicht
-
Ich versuche so ein Fenster zu schließen:
PostMessage (a,WM_CLOSE, 0, 0);Ich ermittel den Handle via "FindWindow",lasse dann den Handle in a schreiben.
Der Handle des Fensters stimmt.
Nur leider wird nur manchmal das Fenster geschlossen nicht immer.
Was ist den jetzt an dieser Code Zeile verkehrt?
-
Nimm statt PostMessage (a,WM_CLOSE,0,0) lieber SendMessage (a,WM_CLOSE,0,0).
Im Gegensatz zu PostMessage () kehrt SendMessage () erst zurück, wenn das Fenster die Botschaft auch verarbeitet hat.

-
du könntest eventuell auch WM_QUIT oder WM_DESTROY versuchen, und wie merker schon geschrieben hat, verwende sendmessage()
mfg
-
SendMessage birgt aber auch das Gefahrenpotential, das wenn die andere Anwendung hängt, tut Deine das auch. Evtl. mal mit SendMessage, WM_SYSCOMMAND und SC_CLOSE probiert?