Zitat von
gandime:
Delphi-Quellcode:
if application.terminated then
begin
exit;
end;
aber bei fast 10000 Zeilen Code habe ich nicht recht viel lust das alles nachzugucken und einzufügen
Das wäre aber genau die richtige Lösung.
Der obige Code muss an
strategisch richtigen Stellen in deinem Programm eingebaut werden.
Dabei helfen folgende Überlegungen:
Dein Programm sollte spätestens nach 1,5 Sekunden reagieren, nach dem der Benutzer es beendet hat.
Wenn es also 2 oder mehr verschachtelte Schleifen gibt, dann reicht es meistens aus, obigen Code
in die äussere Schleife zu packen.
Die Variable Application
.Terminated kann sich nur ändern, wenn zuvor Application
.ProcessMessages aufgerufen wurde !
Also ergibt sich logisch folgende Konstruktion:
Delphi-Quellcode:
application.ProcessMessages;
if application.Terminated then exit;