Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Visual Studio 2005中对取消引用指针的地址设置数据断点_C++_C_Visual Studio 2005_Debugging - Fatal编程技术网

C++ 在Visual Studio 2005中对取消引用指针的地址设置数据断点

C++ 在Visual Studio 2005中对取消引用指针的地址设置数据断点,c++,c,visual-studio-2005,debugging,C++,C,Visual Studio 2005,Debugging,我想知道是否有办法做到以下几点:我有一个结构,其中包含一个成员,当我将该结构传递给API函数时,该成员是指向内核分配的内存块的指针(该结构是WAVEHDR,该成员是保留字段) 我可以在保留成员的值上设置一个数据断点——这本身并没有多大帮助。当遇到断点时,我想做的是取消对reserved中存储的指针的引用,并在该指针指向的内存上设置一个新的数据断点。我希望VisualStudio在内存设置为已知值时中断 我知道如何从宏设置断点,以及如何让Visual Studio在宏被命中时从断点调用该宏,但我不

我想知道是否有办法做到以下几点:我有一个结构,其中包含一个成员,当我将该结构传递给API函数时,该成员是指向内核分配的内存块的指针(该结构是WAVEHDR,该成员是保留字段)

我可以在保留成员的值上设置一个数据断点——这本身并没有多大帮助。当遇到断点时,我想做的是取消对reserved中存储的指针的引用,并在该指针指向的内存上设置一个新的数据断点。我希望VisualStudio在内存设置为已知值时中断

我知道如何从宏设置断点,以及如何让Visual Studio在宏被命中时从断点调用该宏,但我不知道是否可以将指针值传递给宏,以便它可以在正确的地址上设置断点。UI没有提供这样做的方法


宏是否有办法访问有关正在运行的程序的信息,并执行诸如计算全局变量或其他表达式之类的操作?如果我能通过宏对正在运行的代码进行编程访问(在断点期间),我就可以完成我想要做的事情。

我不确定这是否可行。我知道有条件断点,但这需要提前知道内存地址


在条件中断对话框中沿*p==0xADDRESS行的内容。

宏可以计算您在监视窗口中可以计算的任何内容:

    Dim e As EnvDTE.Expression

    e = DTE.Debugger.GetExpression("<my expression>", True)

    If e.IsValidValue Then
        ... use e.Value to do something
    End If
dime作为EnvDTE.Expression
e=DTE.Debugger.GetExpression(“,True)
如果e.IsValidValue,则
... 用e.Value做某事
如果结束
你在e.value中得到的值正好是你在watch窗口中看到的字符串,所以你可能需要把它分开。Expression对象上还有许多其他属性可以使用。看