In diesem Fall ist es ja einfach, denn es gibt bereits eine "andere"
Exception-Klasse.
Delphi-Quellcode:
else
begin
raise EClipboardException.Create('Cannot read clipboard after fifty attempts');
Aber es ist ebenfalls extrem unschön, wenn man die eigentliche
Exception sinnlos vernichtet.
Delphi-Quellcode:
else
begin
raise EClipboardException.Create('Cannot read clipboard after fifty attempts'#10#10 + E.Message);
Delphi-Quellcode:
// hier bleibt im nächsten E.InnerException die ursprüngliche Exception erhalten
else
begin
Exception.RaiseOuterException(EClipboardException.Create('
Cannot read clipboard after fifty attempts');
Schade ist nur, dass hauseigenen im ShowException von Delphi so Eingies einfach grob fahrlässig vergessen wurde,
aber zumindestens innerhalb des Programms kommt man dennoch an InnerException ran.
Ein Therapeut entspricht 1024 Gigapeut.