Hallo Voti,
ich verwende Postmessage schon sehr lange und das funktioniert exakt so, wie es soll. Die Message wird in die Warteschlange gestellt und die Ereignisroutine wird weiter abgearbeitet. Erst am Ende der Ereignisroutine wird die Warteschlange abgearbeitet, was ja genau die Absicht war. Das der Code also ms danach abgearbeitet wird, ist also falsch. Kannst du auch leicht z.B. mit einer For Next überprüfen. Einzig, wenn explizit die Prozessorzeit abgegeben wird, z,B, durch ein DoEvents, wird das WM_Close vorher bearbeitet. So sollte man also natürlich nicht programmieren.Bei Application.Quit ist sofort Ende und leider ist nicht dokumentiert, was genau passiert. Könnte also auch gut sein, das eventuell die Timer-Ressourcen nicht mehr ordenlich freigegeben werden - wer weiß. Postmessage entspricht also exakt einem Klick auf das Schließen-Kreuz des App-Fensters.
|