ExceptObject ist nicht reentrant und nicht thread-safe, weshalb es sich innerhalb der If Abfragen verändern kann. Darauf hatte jbg schon einmal hingewiesen, als ich auch mit ExceptObject gearbeitet hatte. Eine bessere Lösung wäre folgende:
Delphi-Quellcode:
try
irgendwas();
except
on e:
exception do
begin
TuWasAllgemeines();
// <-- Fehler, wird "on Exception do" verwendet ist dies ungültig.
if e
is EEinFehler
then
begin
...;
end
else if e
is ENochEinFehler
then
begin
...;
end;
end;
end;