Visual Studio Breakpoint宏来修改值?

Tim*_*Tim 6 c++ debugging macros visual-studio-2008 visual-studio

我正在调试一个应用程序(C++),我在代码中找到了一个我要更改值的点(通过调试器).所以现在,我有一个断点设置,我做了:

  • 调试器到达断点
  • 我修改了我想要改变的变量
  • 我按F5继续跑
  • 泡沫,冲洗,重复

它正在打破这个断点,所以我想自动化这个.我想设置断点来运行宏,并继续执行.

但是,我没有编写VisualStudio宏的经验,所以我不知道修改执行程序变量的命令.我环顾四周,但到目前为止还没有在网上找到任何帮助.

Tim*_*Tim 12

我发现如何使用宏来做到这一点.最初,我尝试使用Ctrl-Shift-R来记录键击的宏,但是当我执行Ctrl-Alt-Q时它停止了录制.但我能够编辑宏以使其工作.所以这就是我所做的,以防其他人想要做类似的事情.

  • 工具 - >宏 - >宏浏览器
  • 右键单击 - >新建宏

    Public Module RecordingModule
        Sub setvalue()
            DTE.Debugger.ExecuteStatement("variable_name=0")
        End Sub
    End Module
    
    Run Code Online (Sandbox Code Playgroud)

该宏将执行赋值语句,设置我的变量(在这种情况下,使其成为NULL指针).

  • 右键单击BreakPoint - > Hit Hit ...
  • 选中"运行宏"
  • 选择 Macros.MyMacros.RecordingModule.setvalue
  • 选中"继续执行"
  • 单击确定

然后,我能够运行我的程序,自动将指针调整为NULL.这对于测试非常有用,并且不需要重新编译.