【问题标题】:VS2010 Remote debugger stopping where is no breakpointVS2010 远程调试器在没有断点的地方停止
【发布时间】:2012-06-23 15:15:00
【问题描述】:

我正在远程调试 Microsoft FSX 的 dll(C++,非托管)(我不知道这是否重要)。该 dll 被编译为“多线程 dll”,因为它不能作为“多线程 dll 调试”工作。我的 dll 目前只包含一个 DllStart 和 DllStop 函数,这是 FSX 中的标准。

我一般调试工作正常(它在我的断点处停止),但不知何故,调试器也停止在我没有没有放置断点的地方。首先,问题出现在“没有可用来源”的风格中。检查后

  1. Suppress "No Source Available" pane in 2010 和
  2. No Source available

对我有用的唯一解决方案是安装提到的extension。现在我不再获得“无源”选项卡,但调试器仍然在我的代码之外的某个地方停止。我已经按照“Debugger stops when there is no breakpoint VS2010”中的建议清理了所有断点。 bglmanx.dll 是另一个 dll,也是由 FSX 启动的。我在想,好吧,也许这些符号有些模棱两可,并将我的函数重命名为DllStartFSXM 和DllStopFSXM(因此是唯一的)。没有改善。

有什么想法、提示吗?

【问题讨论】:

  • 调试器自行停止时能否继续应用程序?如果不是,这实际上可能是 dll 中的错误,例如仅在调试模式下发生的崩溃。
  • 是的,我可以继续。最终它使 FSX 崩溃(仅在调试时,没有它就可以了),但它不是我的 DLL(我可以说,因为即使函数是空体也会发生)。这就是为什么我需要绕过它。

标签: c++ visual-studio-2010 remote-debugging visual-studio-debugging debugbreak


【解决方案1】:

可能是由于其他代码中有 __asm int 3 或 DebugBreak 造成的?

也许有一些方法可以禁用这些命令或重新实现 DebugBreak 功能?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-05
    • 1970-01-01
    • 1970-01-01
    • 2013-09-26
    • 2019-04-11
    • 1970-01-01
    • 2022-01-28
    • 2016-07-05
    相关资源
    最近更新 更多