gpt4 book ai didi

c# - Visual Studio - 从异常返回

转载 作者:行者123 更新时间:2023-11-30 13:32:15 25 4
gpt4 key购买 nike

我如何处理正在 Visual Studio 2012 中调试/运行的程序,该程序显示未处理的异常并且程序停止(我的程序有错误)?有没有办法将程序的堆栈返回到异常发生前的上一行?

现在,每当程序中出现异常时,我都必须重新启动程序并捕获(在我的例子中,这需要很长时间)。在 Visual Studio 中抛出/显示异常后,我想返回到异常行之前的上一行,然后从那里开始。

在 Visual Studio 中有什么方法可以做到这一点吗?任何命令或按钮?

像这样:

line 1: object _hello = GetSomeObject()

line 2: if(_hello.Property == true) {
} // exception line - _hello is null

我想在不停止调试的情况下返回同一个实例中的第 1 行。

最佳答案

异常一旦抛出就无法回溯,需要先通过调用栈判断异常是如何发生的,然后在异常发生前设置断点。

下次调试代码时,当调试器到达断点时,您可以将箭头指针向上拖动到上一行以回溯执行到该行,然后使用 Watch/Quick Watch 等。

调用堆栈可以在 VS2012 中通过调试菜单 -> 其他窗口 -> 调用堆栈访问。

一旦您查看了调用堆栈,您就会知道您的程序是如何达到异常条件的,从而知道在哪里设置断点。这取决于您的情况,但是,仅使用调用堆栈和智能感知可能会解决您的问题,而无需单步执行代码。

关于c# - Visual Studio - 从异常返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15191922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com