Zitat von
opfer.der.genauigkeit:
Weil? Es ist doch keine Funktion dabei, die eine
Exception erzeugen kann.
In der Theorie, ja.
In der Praxis solle man keinem fremden Code jenseits der Dokumentation trauen (und manchmal nicht mal der Dokumentation
).
Es gibt von Microsoft zum Beispiel Tools um die "Stabilität" einer Anwendung zu testen. Ganz davon abgesehen, dass Delphi-Programe im Logo-Test ohnehin durchfallen (durch das globale Abfangen der unbehandelten Ausnahmen - was "früher" sicher eine gute Idee war, bis Microsoft sich für die integrierte Problemberichterstattung endschied, um von den Problemen beim "echten" Kunden zu erfahren)... ich schweife ab
Wie auch immer, es schadet sicher nicht,
kritische Ressourcen (und dazu zähle ich Datei-Handles) auch im Fall einer Ausnahme freizugeben. Durch try-finally wird die Ausnahme ja nicht unterdrückt.
Ich könnte mich noch länger über den (Un)sinn von try-except-Blöcken ohne 'on' (oder ganz leer) und die (Neben)wirkungen von Application.ProcessMessages unterhalten. Allerdings muss ich 'nebenbei' noch arbeiten