如何跳回到在Visual Studio 2010调试器中引发异常的代码行?

时间:2013-02-21 19:48:36

标签: visual-studio-2010 visual-studio debugging exception exception-handling

使用Visual Studio 2010调试器,我熟悉使用“调用堆栈”窗口查看当前正在执行的函数的调用位置。

我正在使用一些具有相当大的try块的应用程序。假设我在catch块的断点处暂停执行代码,那么判断try块中哪一行引发异常的最简单方法是什么?

我知道“堆栈跟踪”包含行号等详细信息,但是有一种更简单的方法,例如快捷键,可以导航回到引发异常的代码行吗?

更新:我想强调一点,我不希望将执行点移回try块;我只是想要一种更简单的方法来了解引发异常的行。

3 个答案:

答案 0 :(得分:12)

如果你转到“DEBUG”,“Exceptions ...”然后选择“Thrown”对“Common Language Runtime Exceptions”。

Exceptions

然后,当您的代码遇到异常时,它将在错误的行上停止。

答案 1 :(得分:3)

解决方案可能是在所有例外情况下使VS中断:

Exceptions菜单下选择Debug,然后选中与Common Language Runtime Exceptions相关的“投掷”框。

现在VS应该停止并标记抛出异常的行。您可以像往常一样继续,点击播放按钮或F5。

这样做的缺点是所有异常都会以同样的方式被捕获,如果你有很多异常,这可能很烦人。

答案 2 :(得分:0)

对于Visual Studio 2019:

转到Debug-> Windows-> Exception Settings并标记Common Language Runtime Exceptions下的每个异常。

enter image description here