如何:设置下一语句

本主题适用于:

版本

Visual Basic

C#

F#

C++

Web Developer

学习版

主题适用 主题适用 主题适用 主题适用 主题适用

专业版、高级专业版和旗舰版

主题适用 主题适用 主题适用

主题适用

主题适用

此项功能不适用于 Transact-SQL 调试。

在 Visual Studio 调试器中,可以移动执行点来设置要执行的下一条代码语句。 源窗口或“反汇编”窗口的空白区域中的黄色箭头标记要执行的下一条语句的位置。 通过移动此箭头,可以跳过部分代码或返回到以前执行过的行。 在某些情况下可以使用此方法,例如,跳过包含已知 bug 的代码段。

警告

设置下一条语句将导致程序计数器直接跳到新位置。 使用此命令时要小心:

  • 不执行旧执行点和新执行点之间的指令。

  • 如果向后移动执行点,则不撤消插入的指令。

  • 将下一条语句移动到另一个函数或范围通常会导致调用堆栈损坏,导致一个运行时错误或异常。 如果尝试将下一条语句移动到另一个范围,则调试器将打开一个含有警告的对话框,并提供一个取消该操作的机会。 在 Visual Basic 中,不能将下一条语句移动到另一个范围或函数。

  • 在本机 C++ 中,如果已启用运行时检查,则设置下一条语句会导致执行到达方法的结尾时引发异常。

  • 当启用“编辑并继续”时,如果您做出了“编辑并继续”无法立即重新映射的编辑,则“设置下一语句”将失败。 例如,如果您编辑了 catch 块中的代码,将发生这种情况。 发生这种情况时,您将看到类似如下的错误消息:“无法将下一语句设置到此位置。不支持操作。未知错误: 错误号”

提示

在托管代码中,在以下情况下不能移动下一条语句:

  • 下一条语句与当前语句不在同一个方法中。

  • 使用实时调试启动调试。

  • 正在展开一个调用堆栈。

  • 已引发一个 System.StackOverflowException 或 System.Threading.ThreadAbortException 异常。

应用程序处于活动运行状态时不能设置下一条语句。 要设置下一语句,调试器必须处于中断模式。 有关更多信息,请参见中断执行

提示

显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您现用的设置或版本。 若要更改设置,请在“工具”菜单上选择“导入和导出设置”。 有关更多信息,请参见 使用设置

设置要执行的下一语句

  • 在源窗口中,单击黄色箭头,要将下一条语句设置到哪个位置,就将箭头拖到该位置,该位置应在同一源文件中

    - 或 -

  • 在源窗口中,右击要执行的下一条语句,然后选择**“设置下一语句”**。

  • 在**“反汇编”窗口中,右击要执行的下一条汇编语言指令,然后选择“设置下一语句”**。

请参见

概念

Execution 控件