我正在使用 PageHeap 来识别堆损坏。我的应用程序有堆损坏。但是应用程序在为传递给方法的字符串创建 STL 对象时中断(由于崩溃)。我在崩溃位置附近看不到任何可见的内存问题。我启用了整页堆来检测堆损坏,并启用了/RTC 来检测堆栈损坏。
我应该怎么做才能在发生堆损坏的确切位置中断?
最佳答案
启用 FULL pageheap 可以增加调试器捕获正在发生的堆损坏的机会:
gflags /p /enable /full <processname>
此外,如果你能找出哪个地址被覆盖,你可以在 windbg 中设置内存访问断点。不确定 VS 调试器是否具有相同的功能。
关于c++ - PageHeap 不显示确切的崩溃位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5925468/