Ich schreibe eine kleine Bibliothek, die alle unbehandelten Ausnahmen abfängt, zeigt einen kleinen Dialog (ähnlich dem üblichen Dialog des NF), der dem Benutzer die Möglichkeit gibt, die Ausnahme an den Entwickler zu senden. Dazu verwende ich das UnhandledException-Event der AppDomain wie folgt:
%Vor%ExceptionHandler und ExEntry sind Klassen meiner Bibliothek. Aber: Wenn eine Ausnahme auftritt, springt der Compiler in meinen Lambda-Ausdruck, versucht die erste Codezeile zu debuggen und zeigt dann den Fehler an, der zuvor aufgetreten ist, ohne den Rest des Lambda abzuarbeiten. Aber wenn ich nur schreibe:
%Vor%es funktioniert perfekt. Hat jemand eine Idee, warum das nicht funktioniert?
Es könnte zwei Gründe geben.
Eine Möglichkeit ist, dass Sie UnhandledExceptionMode nicht richtig eingestellt haben:
> %Vor%Ein anderer Fall könnte sein, dass Sie die ThreadException nicht behandelt haben und die Die ausgelöste Ausnahme war keine unbehandelte Ausnahme, sondern eine Thread-Ausnahme.
Es folgt ein Beispiel, das Sie entsprechend Ihrem Szenario ändern müssen:
%Vor%