Hi,
Indy wirft ja gerne mal die EIdNotConnected oder EIdDisconnected Exceptions, auch wenn alles in Ordnung ist. Leider springt ja der Debugger drauf an.
In den Kommentaren von
Indy steht:
Delphi-Quellcode:
// You can add EIdSilentException to the list of ignored exceptions to reduce debugger "trapping"
// of "normal" exceptions
EIdSilentException = class(EIdException);
Leider bringt das oben nur bei EIdConnClosedGracefully was. Jetzt ist die Frage, kann ich irgendwas machen, dass die erstgenannten Exceptions erst gar nicht auftreten (EIdNotconnected und EIdDisconnected) oder muss ich die zu der Liste der ignorierten Debuggerexceptions hinzufügen, dass ich die Dinger nicht mehr sehe? Es ist sowas von nervig, wenn man beim Beenden der Anwendung immer die Meldung des Debuggers bekommt.
Delphi-Quellcode:
destructor TIRCChat.Destroy;
begin
if FClient.Connected then
FClient.Disconnect(true);
FClient.Free; // Irgendwann hier drin passiert es.
inherited Destroy;
end;
Auch wenn man erst FClient.Free aufruft, sobald das Event OnDisconnected aufgerufen wurde, erhält man eine
Exception "EIdNotConnected".
Ich hab hier im Forum schon ein bisschen gesucht und auf Vergewaltigung von Sprachfeatures und "Verkrüppelung" des Designs gestoßen und ansonsten nur, dass es quasi nur über die Ignorierlist geht. Würde aber gerne die Krankheit abschaffen und nicht das Symptom ausblenden.
Hat jemand noch eine Idee?
[edit=Matze]Titel auf Wunsch des Autors geändert. MfG, Matze[/edit]