Such mal hier im Forum nach
TRY EXCEPT FINALLY
Der Unterschied zwischen Try-Except-End und Try-Finally-End ist einfach der, daß die Befehle hinter Finally immer aufgerufen werden und die Befehle hinter Except nur im Fehlerfall, sprich:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Try Datei:=TIniFile.Create(Pfad+'Test.ini'); Datei.ReadString...; Datei.ReadInteger...; Datei.ReadBool...; Except Datei.Free; |
Dieser Befehlsblock würde deine INI aufrufen, einige Werte auslesen,
aber nur im Fehlerfall den Speicher wieder freigeben. Daher ist
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Try Datei:=TIniFile.Create(Pfad+'Test.ini'); Datei.ReadString...; Datei.ReadInteger...; Datei.ReadBool...; Finally Datei.Free; |
in diesem Fall sinvoller, weil auch hier der Speicher freigegeben wird, wenn kein Fehler auftritt. Nur leider weißt du ja vorher nicht, ob dein Programm Fehler erzeugt oder nicht.
