English 中文(简体)
视觉演播室突破 修改价值吗?
原标题:Visual Studio Breakpoint Macro to modify a value?

I m debugging an application (C++),我发现,在法典中,我想改变价值(通过夸张)。 因此,我现在谈谈一个打破点,我在这里做的是:

  • Debugger reaches breakpoint
  • I modify the variable I want to change
  • I hit F5 to continue running
  • lather, rinse, repeat

它击中了这一突破点,因此,我要将此事自动化。 我要确定“突破点”,以管理宏观,继续执行。

然而,我没有经验撰写视觉素材,因此我不知道修改执行方案变量的指令。 我对周围进行了研究,但迄今在网上发现有任何帮助。

最佳回答

我发现如何用宏观方法做到这一点。 起初,我尝试利用Ctrl-Shift-R来记录一场重大中风,但当我做Ctrl-Alt-Q时,它停止了记录。 但是,我得以将宏观推向工作。 因此,这里我做了些什么,在任何其他人想要做类似的事情的情况下。

  • Tools -> Macros -> Macro Explorer
  • Right Click ->

    Public Module RecordingModule
        Sub setvalue()
            DTE.Debugger.ExecuteStatement("variable_name=0")
        End Sub
    End Module
    

这一宏观办法将执行职务说明,确定我变量(在这种情况下,使其成为民族解放军的协调人)。

  • Right Click on a BreakPoint -> When Hit...
  • Check "Run a macro"
  • Select Macros.MyMacros.RecordingModule.setvalue
  • Check "Continue execution"
  • Click OK

随后,我得以实施我的方案,随着时间的推移,自动调整了全国扫盲委员会的一位协调人。 这对测试非常有用,不需要再做。

问题回答

看一下今天的类似情况,发现你也可以使用印刷信息:选择而不是宏观。 可从代码上打印价值,将其放在{}。 关键在于,VS还将评价内容为表达方式——因此{可变_ 姓名=0}应当与宏观实例相同。

如果你想像Microsoft excel那样做一个宏观,那么你就会把.子 re走。 这样做就没有成功。

在C++中,宏观指的是用零计创建的小型在线功能。 它是先处理者,因此,宏观的意思是在其所有参考资料中使用替代物。

例如:

#define add(a,b) ((a)+(b))

int main() {
  int a=3, b=4, c=5, d=6, e, f;
  d = add(a,b);
  e = add(c,d);
}

想到C++汇编者:

int main() {
  int a=3, b=4, c=5, ...;
  d = ((a)+(b));
  e = ((c)+(d));
}

我现在回头谈谈你的问题。 如果该变量属于这一突破点的范围,那么该变量就从你的法典中确定:

myVar = myValue;

如果没有,但可以保证存在,你可能需要一个小ck。 说这一变量是隐蔽的,是全球性的点。 如果这一变量是静态的,则确保将其放到其地址,并回到其范围内。 如果是动态的,你可能需要额外的工作。 例如:

int* globalIntPointer;

void func() {
  *globalIntPointer = 3;
  //...
}

int main() {
  int a = 5;
  globalIntPointer = &a;
  func();
  //...
  globalIntPointer = NULL; // for safety sake
  return 0;
}

在破门点时,你可以执行甚小分辨率(打开断点窗,右上点击有关断点,并选择“When Hit. ......”。 我不太肯定的是,撰写一个宏观,将方案的一个变数 mo——尽管我从未做过,而且试图记录一个宏观做事的快速尝试似乎不可行(所有记录都正在打破正确的窗口,而不是改变价值)。

选择“条件.......”并在“条件:”文本箱中写出有关变数的转让。 这自然会决定“真实”,而实际上不是有条件的检验。 因此,打破点永远不会被打上,而你的变数已经相应确定。





相关问题
Undefined reference

I m getting this linker error. I know a way around it, but it s bugging me because another part of the project s linking fine and it s designed almost identically. First, I have namespace LCD. Then I ...

C++ Equivalent of Tidy

Is there an equivalent to tidy for HTML code for C++? I have searched on the internet, but I find nothing but C++ wrappers for tidy, etc... I think the keyword tidy is what has me hung up. I am ...

Template Classes in C++ ... a required skill set?

I m new to C++ and am wondering how much time I should invest in learning how to implement template classes. Are they widely used in industry, or is this something I should move through quickly?

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

typedef ing STL wstring

Why is it when i do the following i get errors when relating to with wchar_t? namespace Foo { typedef std::wstring String; } Now i declare all my strings as Foo::String through out the program, ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

Window iconification status via Xlib

Is it possible to check with the means of pure X11/Xlib only whether the given window is iconified/minimized, and, if it is, how?

热门标签