0

情况就是这样,我正在使用 Visual Studio 2008 在 C++ 中开发浏览器帮助程序对象 (BHO),并且我了解到在调试模式下管理内存的方式与在发布模式下不同。所以当我在调试模式下运行我的 BHO 时,internet explorer 8 工作得很好,我完全没有错误,浏览器永远活着,但是一旦我在发布模式下编译它,我就没有错误,没有消息,什么都没有,但 5 分钟后,我可以通过任务管理器看到 Internet Explorer 实例只是在消耗内存,然后浏览器每次都停止响应。拜托,我真的需要一些关于如何获得可能是错误的反馈的提示。我听说,这通常是因为内存管理不善而发生的。我需要一个在 iexplorer 崩溃时抓取内存转储或其他东西的软件,以帮助我找到问题。

4

1 回答 1

0

我使用在微软符号服务器下载的符号文件(.pdb 文件)解决了我的问题。将 iexplorer.exe 进程附加到 VisualStudio'08,然后我收到了有关执行期间参与的每个 .dll 模块的更多信息。然后,我能够找到导致 ie8 崩溃的特定行。这是关于 CMutex 锁的(但这是另一个故事)。

于 2010-06-06T22:54:16.393 回答