【发布时间】:2012-06-23 15:15:00
【问题描述】:
我正在远程调试 Microsoft FSX 的 dll(C++,非托管)(我不知道这是否重要)。该 dll 被编译为“多线程 dll”,因为它不能作为“多线程 dll 调试”工作。我的 dll 目前只包含一个 DllStart 和 DllStop 函数,这是 FSX 中的标准。
我一般调试工作正常(它在我的断点处停止),但不知何故,调试器也停止在我没有没有放置断点的地方。首先,问题出现在“没有可用来源”的风格中。检查后
对我有用的唯一解决方案是安装提到的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