Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

AW: OpenDialog wird in der IDE nicht angezeigt

  Alt 12. Dez 2010, 18:20
Delphi-Quellcode:
except
  on E: Exception do
  begin
    E.Message := 'Fehler beim Öffnen der Datei!' + sLineBreak + E.Message;
    raise E;
  end;
end;
3. das würde ich eher empfehlen > Text erweitern und Exception weiterreichen) ... ist besonders vorteilhaft, wenn man auch mal außerhalb der Funktion auf diese Exception reagieren will.
"raise E" führt zur Zugriffsverletzung, weil E im "end" des "on E" freigegeben wird. Statt "raise E" muss hier einfach nur "raise" stehen (ohne E), was die System.pas Funktion "Reraise" aufruft und dem 'end;' "mitteilt", dass E nicht freigegeben werden darf.

Delphi-Quellcode:
except
  on E: Exception do
  begin
    E.Message := 'Fehler beim Öffnen der Datei!' + sLineBreak + E.Message;
    raise; // hier kein "raise E", da sonst Zugriffsverletzung
  end;
end;
  Mit Zitat antworten Zitat