我想设置一个断点,并希望在一块内存(开始地址和长度已知)发生更改时触发它。我正在使用 Windows Server 2003 x64 平台。Windbg 中的解决方案或 Visual Studio 中的解决方案都可以。我的目的是监视内存内容何时发生变化。
提前谢谢,乔治
我想设置一个断点,并希望在一块内存(开始地址和长度已知)发生更改时触发它。我正在使用 Windows Server 2003 x64 平台。Windbg 中的解决方案或 Visual Studio 中的解决方案都可以。我的目的是监视内存内容何时发生变化。
提前谢谢,乔治
尝试设置数据断点。
在 Visual Studio 中:
这也可以在 GDB 中完成。在 GDB 中,这是对特定地址的监视(我已经成功地以这种方式在 C++ 对象成员的地址上设置监视)。
不确定VS,但是使用windbg可以使用以下命令
ba w 大小地址
将 size 替换为内存的长度,将 address 替换为内存的起始地址。
您可以设置数据断点,但您需要知道您感兴趣的内存位置的地址,然后才能设置这样的断点。通常,我要么在程序的开头设置断点,要么让调试器在附加时挂起,这样我就可以找到要监视的变量的内存地址,然后设置数据断点。