【问题标题】:How to debug a Visual C++ Runtime Error如何调试 Visual C++ 运行时错误
【发布时间】:2009-01-13 19:14:17
【问题描述】:

我正在 Visual Studio 2008 中编写一个 C++ COM 对象,它是一个 Internet Explorer 浏览器帮助器对象。最近在IE中运行时,IE开始频繁弹出“Microsoft Visual C++ Runtime Library”对话框,并出现“Runtime Error!”的错误提示。并继续说“应用程序已请求运行时以不寻常的方式终止它。请联系应用程序的支持团队以获取更多信息。”与往常不同的是,这个对话框只有一个 OK 按钮,但没有调试按钮,所以 IE 然后终止,我没有留下太多堆栈跟踪,甚至没有提示我的代码的哪一部分可能有这么多错误。我不确定它在我的代码中的 where 崩溃了。

如何解决“运行时错误”问题?运行时错误的可能原因有哪些? (可能与内存相关的错误?)我应该检查我的代码以尝试消除这种崩溃的什么样的问题?我需要一些关于如何解决这个问题的想法,它有点难以捉摸。

【问题讨论】:

    标签: c++ visual-studio debugging


    【解决方案1】:

    当您看到该对话框时,使用您的 COM 对象项目启动 VS2008。 然后使用菜单 Debug->Attach to process 将调试器附加到加载了 COM 对象的 IE 进程。 然后进入进程(Debug->break all),你会得到堆栈跟踪。

    【讨论】:

      【解决方案2】:

      它由于未处理的异常而爆炸。这使您有机会使调试器在第一次机会异常时停止,就在它被引发的地方。打开你的项目,使 iexplorer.exe 成为启动程序。 Debug + Exceptions,检查非托管异常上的 Thrown 标志。让它崩溃以获取断点。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-17
        • 1970-01-01
        • 1970-01-01
        • 2021-12-20
        • 1970-01-01
        • 2018-05-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多