【问题标题】:Can I have "Automatic Breakpoints" when my code is reached?当我的代码到达时,我可以有“自动断点”吗?
【发布时间】:2015-12-19 22:04:28
【问题描述】:

我正在 Visual Studio 2013 中调试一个相当复杂的 C++ COM 对象,看起来像是堆栈损坏。我希望调试器在到达我自己的源代码时停止,这可能吗?

【问题讨论】:

  • 也许只是添加日志?
  • 我从未使用过它,但也许DebugBreak() 对你有用。
  • @JohnnyMopp:我以前用过几次。它不是特别漂亮或优雅,但它可以完成工作。
  • 那些建议到处设置断点的人:如何找到对 COM 对象的所有调用,以确保不会错过任何一个?

标签: c++ debugging visual-studio-2013 breakpoints visual-studio-debugging


【解决方案1】:

我认为没有启用这样的功能,但您可以查看Managed Debugging Assistants,尤其是

这将使其更有可能检测到更接近原点的问题。

同时了解其他 MDA,尤其是在您有嫌疑人的情况下。

【讨论】:

    【解决方案2】:

    如果您有权访问COM 对象并且正在使用ATL,则可以在每次使用QueryInterface 查询特定接口时使用COM_INTERFACE_ENTRY_BREAK 发出断点。

    这应该允许您在执行任何代码之前中断。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-17
      • 1970-01-01
      • 2011-07-11
      • 2020-08-10
      • 1970-01-01
      • 2013-11-03
      • 2019-11-23
      • 1970-01-01
      相关资源
      最近更新 更多