您知道如何点击断点上的黄色箭头并将其向下拖动以跳过执行代码行吗?那么,是否可以创建一个“When Hit”宏(或类似的东西)来跳过包含断点的行的执行?
所以不要像
那样编写代码if(!Debugging)
Response.Redirect("LoginFail.aspx");
我可以在Response.Redirect()
行上设一个断点,“当点击”时会跳过它。
答案 0 :(得分:6)
我不知道这样做的方式。但是,您可以设置断点的“When hit”选项以运行宏。编写获取当前行的宏应该不难,然后设置下一个调试器行。您可能希望查看Debugger.SetNextStatement方法。
像这样的宏应该这样做:
Public Sub SkipNextLine()
ActiveDocument().Selection.LineDown()
DTE.ExecuteCommand("Debug.SetNextStatement")
End Sub
答案 1 :(得分:1)
是的,您可以使用跟踪点直接执行此操作。
{@eip = address}
。答案 2 :(得分:0)
我不知道用断点做到这一点但你可以使用编译器指令来跳过代码
#if (DEBUG)
//this code is skipped in debug mode
#endif
答案 3 :(得分:0)
尝试:
#if DEBUG
Response.Redirect("LoginFail.aspx");
#endif
确保在构建属性中检查了DEBUG常量。
答案 4 :(得分:0)
同意使用编译器指令或任何其他要求在代码中添加逻辑。但是,也理解编辑调试代码并不总是一个选项(例如,不拥有代码可能意味着没有构建它所需的所有资源)。
如果这是你的情况,我担心编写你自己的宏或等待VS有一个内置的等价物是你唯一的选择。