Die 5. Sünde ist Unfug (zumindest bei Delphi 6 - hab gerade keine andere Version parat).
Einen finally-Handler benötigt man nur, wenn man Exceptions nicht gesondert behandeln möchte.
Selbstverständlich wird nach dem Except normal weitergemacht und eben nicht die Prozedur verlassen!
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var a,b: double;
begin
try
b := 0;
a := 666;
a := 10 / b;
except
ShowMessage('nulldivision');
end;
ShowMessage(FloatToStr(a));
end;
Beide ShowMessage werden ausgeführt.
Ich weiß, dass dieser Thread alt ist, aber leider ist das der 3. Google-Treffer, wenn man nach Delphi-
Exception sucht. Habe mich extra angemeldet in der Hoffnung, dass der Threadersteller seinen Eingangsbeitrag noch editieren könnte, damit nicht weiterhin diese Unwahrheit verbreitet wird.