Discussion:
Unbehandelte Ausnahmen finden im Debugging
(zu alt für eine Antwort)
Tom Flemming
2009-05-27 18:19:16 UTC
Permalink
Hi,

wenn ich mein Programm debugge in der VS2008-Ide und das Programm auf eine
unbehandelte Ausnahme stößt, gibts es im Direkt-Fenster einfach eine Meldung, z.b:

"Eine Ausnahme (erste Chance) des Typs "System.InvalidOperationException" ist
in mscorlib.dll aufgetreten."

oder

"Eine Ausnahme (erste Chance) des Typs "System.NullReferenceException" ist in
xxx aufgetreten."


Leider läuft das Programm trotzdem weiter... !

Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der Code-Zeile
anhält, an der die Ausnahme aufgetreten ist?
Ist sonst sehr mühsam im Einzelschritt die entsprechende Stelle zu finden.

Grüße,
Tom
Andreas Mahub
2009-05-27 19:15:55 UTC
Permalink
Hi,

bist du sicher das es sich dabei nicht um "veraltete" Meldungen handelt?
Denn normalerweise müsste ja das Programm abgebochen werden. Im
Direktfenster bleiben aber auch nach dem Neustart des Programms die
Meldungen vom letzten mal (bis man sie löscht).

Gruß
Andy
Post by Tom Flemming
Hi,
wenn ich mein Programm debugge in der VS2008-Ide und das Programm auf eine
"Eine Ausnahme (erste Chance) des Typs "System.InvalidOperationException"
ist in mscorlib.dll aufgetreten."
oder
"Eine Ausnahme (erste Chance) des Typs "System.NullReferenceException" ist
in xxx aufgetreten."
Leider läuft das Programm trotzdem weiter... !
Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der
Code-Zeile anhält, an der die Ausnahme aufgetreten ist?
Ist sonst sehr mühsam im Einzelschritt die entsprechende Stelle zu finden.
Grüße,
Tom
Tom Flemming
2009-05-27 19:50:12 UTC
Permalink
Hi Andy,

es sind aktuelle Meldungen. Von vb6 bin ich es auch so gewohnt, das das
Programm abbricht. Aber Vb.net gibt die Meldung aus im Direktfenster, springt
aus der Funktion raus und macht einfach weiter.
Kann man bestimmt irgendwo einstellen, aber wo ??

Grüße
Tom
Post by Andreas Mahub
Hi,
bist du sicher das es sich dabei nicht um "veraltete" Meldungen handelt?
Denn normalerweise müsste ja das Programm abgebochen werden. Im
Direktfenster bleiben aber auch nach dem Neustart des Programms die
Meldungen vom letzten mal (bis man sie löscht).
Gruß
Andy
Post by Tom Flemming
Hi,
wenn ich mein Programm debugge in der VS2008-Ide und das Programm auf
eine unbehandelte Ausnahme stößt, gibts es im Direkt-Fenster einfach
"Eine Ausnahme (erste Chance) des Typs
"System.InvalidOperationException" ist in mscorlib.dll aufgetreten."
oder
"Eine Ausnahme (erste Chance) des Typs "System.NullReferenceException"
ist in xxx aufgetreten."
Leider läuft das Programm trotzdem weiter... !
Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der
Code-Zeile anhält, an der die Ausnahme aufgetreten ist?
Ist sonst sehr mühsam im Einzelschritt die entsprechende Stelle zu finden.
Grüße,
Tom
Armin Zingler
2009-05-27 21:21:01 UTC
Permalink
Post by Tom Flemming
Hi Andy,
es sind aktuelle Meldungen. Von vb6 bin ich es auch so gewohnt, das
das Programm abbricht. Aber Vb.net gibt die Meldung aus im
Direktfenster, springt aus der Funktion raus und macht einfach weiter.
Kann man bestimmt irgendwo einstellen, aber wo ??
Aktiviere mal in den Debug-Optionen "Unterbrechen bei Fehlern" (oder so
ähnlich).


Armin
Andreas Mahub
2009-05-27 22:30:20 UTC
Permalink
Hi Tom,

sowas hatte ich vor kurzem auch. Machst du zufälligerweise mit Linq rum?! Da
war bei mir was falsch eingestellt, und stimmt, die Function wurde einfach
verlassen und das Programm lief weiter.

Gruß
Andy
Post by Tom Flemming
Hi Andy,
es sind aktuelle Meldungen. Von vb6 bin ich es auch so gewohnt, das das
Programm abbricht. Aber Vb.net gibt die Meldung aus im Direktfenster,
springt aus der Funktion raus und macht einfach weiter.
Kann man bestimmt irgendwo einstellen, aber wo ??
Grüße
Tom
Post by Andreas Mahub
Hi,
bist du sicher das es sich dabei nicht um "veraltete" Meldungen handelt?
Denn normalerweise müsste ja das Programm abgebochen werden. Im
Direktfenster bleiben aber auch nach dem Neustart des Programms die
Meldungen vom letzten mal (bis man sie löscht).
Gruß
Andy
Post by Tom Flemming
Hi,
wenn ich mein Programm debugge in der VS2008-Ide und das Programm auf
eine unbehandelte Ausnahme stößt, gibts es im Direkt-Fenster einfach
"Eine Ausnahme (erste Chance) des Typs
"System.InvalidOperationException" ist in mscorlib.dll aufgetreten."
oder
"Eine Ausnahme (erste Chance) des Typs "System.NullReferenceException"
ist in xxx aufgetreten."
Leider läuft das Programm trotzdem weiter... !
Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der
Code-Zeile anhält, an der die Ausnahme aufgetreten ist?
Ist sonst sehr mühsam im Einzelschritt die entsprechende Stelle zu finden.
Grüße,
Tom
Herfried K. Wagner [MVP]
2009-05-27 21:32:01 UTC
Permalink
Post by Tom Flemming
Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der
Code-Zeile anhält, an der die Ausnahme aufgetreten ist?
Menü "Debuggen" -> "Ausnahmen...". Dort kannst Du einstellen, wie der
Debugger mit unterschiedlichen Fehlertypen verfahren soll.
--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>
Tom Flemming
2009-05-28 12:24:37 UTC
Permalink
Post by Herfried K. Wagner [MVP]
Post by Tom Flemming
Gibt einen Schalter irgendwo, sodass die IDE das Debuggen an der
Code-Zeile anhält, an der die Ausnahme aufgetreten ist?
Menü "Debuggen" -> "Ausnahmen...". Dort kannst Du einstellen, wie der
Debugger mit unterschiedlichen Fehlertypen verfahren soll.
Danke, Herfried. Genau das ist es.
Tom

Loading...