Ich glaube immer noch nicht an einen Fehler in den Delphi Sourcen.
Da stimme ich dir zu. Dieser Code wird täglich millionenmal ohne Probleme ausgeführt. Ich bin ziemlich sicher, daß das Problem woanders liegt und mit diesem Patch nur tiefer versteckt wird.
Das ist definitiv so:
... wenn ich mein Programm beende
Da hier viel Aufräumarbeiten geschehen kann es sehr wohl sein das nach einem
WinAPI-Aufruf auch Variablen die zwei Zeilen zuvor noch gültig waren schon im Rahmen der Aufräumarbeiten nicht mehr gültig sind. Die Lösung ist hier zu verhindern das beim Beenden des Programmes nicht noch irgendwelche Timer, (In)Activate, FocusChanged und Co-Events abgearbeitet werden.
Windows Vista - Eine neue Erfahrung in Fehlern.