um alle Fehlermeldungen zu unterdrücken gibt es zwei Wege:
entweder kritische Anweisung mit try except end umschließen:
Delphi-Quellcode:
try
DB.Connected := True;
except
// falls Fehler bei Verbindung mit der DB
{raise;}
end;
-> sollte nur in seltenen Ausnahmefällen verwendet werden, sonst immer mit raise die
Exception weiterreichen
oder:
Delphi-Quellcode:
TForm1 =
class(TForm)
...
procedure FormCreate(Sender: TObject);
private
procedure HideExceptions(Sender: TObject; E:
Exception);
end;
implementation
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnException := HideExceptions;
end;
procedure TForm1.HideExceptions(Sender: TObject; E:
Exception);
begin
// hier Unterscheidung der Exceptions durchführen
end;
-> dann werden programmweit alle nicht mittels try except end abgefangenen Exceptions ebenfalls geschluckt
->> sinnvollerweise sollte sowohl in try except end als auch in Application.OnException eine Unterscheidung der verschiedenen Exceptions vorgenommen werden und daraus eine sinnvolle Meldung für den User generiert werden