更新时间:2023-02-27 13:20:35
我发现如何使用宏。最初,我尝试使用Ctrl-Shift-R来记录击键宏,但是当我执行Ctrl-Alt-Q时,它停止录制。但是我可以编辑宏来使其工作。所以这是我做的,万一有人想做类似的事情。
右键单击 - >新宏
公共模块RecordingModule
子setvalue )
DTE.Debugger.ExecuteStatement(variable_name = 0)
End Sub
结束模块
此宏将执行赋值语句,设置我的变量(在这种情况下,使其变为空指针)。
Macros.MyMacros.RecordingModule.setvalue
然后,我能够运行我的程序,自动调整指向NULL的指针。这对于测试非常有用,并且不需要重新编译。
I'm debugging an application (C++), and I've found a point in the code where I want to change a value (via the debugger). So right now, I've got a breakpoint set, whereupon I do:
It's hitting this breakpoint a lot, so I would like to automate this. I would like to set the Breakpoint to run a macro, and continue execution.
However, I have no experience writing VisualStudio macros, so I don't know the commands for modifying a variable of the executing program. I've looked around, but haven't found anything helpful online so far.
I found how to do this with a macro. Initially, I tried using Ctrl-Shift-R to record a macro of keystrokes, but it stopped recording when I did Ctrl-Alt-Q. But I was able to edit the macro to get it to work. So here's what I did, in case anyone else wants to do something similar.
Right Click -> New macro
Public Module RecordingModule
Sub setvalue()
DTE.Debugger.ExecuteStatement("variable_name=0")
End Sub
End Module
This macro will execute the assignment statement, setting my variable (in this case, making it a NULL pointer).
Macros.MyMacros.RecordingModule.setvalue
Then, I was able to run my program, automatically adjusting a pointer to NULL as it went. This was very useful for testing, and did not require recompiling.