AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi finally: if "exception exists" then ... else ... Ist das möglich?

finally: if "exception exists" then ... else ... Ist das möglich?

Ein Thema von RSE · begonnen am 2. Sep 2011 · letzter Beitrag vom 5. Sep 2011
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.374 Beiträge
 
Delphi 12 Athens
 
#10

AW: finally: if "exception exists" then ... else ... Ist das möglich?

  Alt 2. Sep 2011, 11:06
jain ... dafür ist eigentlich der Except-Block zuständig,

aber (nicht schön, aber gehn)
Delphi-Quellcode:
EinFehler := True;
try

  ...
  
  EinFehler := False;
finally

  if EinFehler then ...

end;
ansonsten
Delphi-Quellcode:
try
  ...
except
  ...
  raise; // erneut auslösen
end;
Delphi-Quellcode:
try
  ...
except
  on E: Exception do begin
    ...
    E.Message := 'Fehler: ' + E.Message; // eventuell die Meldung erweitern
    ...
    raise; // erneut auslösen
  end;
end;
Delphi-Quellcode:
try
  ...
except
  on E: Exception do begin
    ...
    raise Exception.Create(...); // andere Exception auslösen
  end;
end;

und dann noch verschachtelt
Delphi-Quellcode:
try
  X := TIrgendwas.Create;
  try
    ...
  finally
    X.Free; // erst aufräumen, dann Exception behandeln
  end;
except
  ...
end;
Delphi-Quellcode:
X := TIrgendwas.Create;
try
  try
    ...
  except
    ...
  end;
finally
  X.Free; // erst Exception behandeln, dann aufräumen
end;
Delphi-Quellcode:
X := nil;
try
  X := TIrgendwas.Create; // Fehler beim Erstellen ebenfalls mit behandeln
  try
    ...
  except
    ...
  end;
finally
  X.Free; // erst Exception behandeln, dann aufräumen
end;
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 2. Sep 2011 um 11:11 Uhr)
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz