【发布时间】:2014-07-31 09:19:34
【问题描述】:
我正在使用没有可用源代码的第 3 方 dll。它运行得非常好,但每次我运行我的程序时,都会弹出一个恼人的提示“MyProgram.exe 已触发断点”。
如果我按继续,我的程序会 100% 正确运行。 如果我按下 break,我可以看到断点出现在第 3 方文件 alp41basic.dll 中
我不知道他们为什么在他们的 dll 中设置断点。如何禁用它们?
我的问题与未回答的问题相同: https://stackoverflow.com/questions/17514072/is-there-a-way-to-make-visual-studio-continue-when-an-exception-occurs-on-a-line
【问题讨论】:
-
你试过在VS中使用“禁用所有断点”吗?它应该只是调试菜单中的一个复选框。我不记得那只是你自己的代码,还是所有的代码。
-
我非常怀疑他们在他们的 dll 中设置了断点。更有可能存在异常,并且您在调试器中启用了异常中断。
-
如果不是这种情况,我的下一个解释是您的程序没有真正运行 100% 正确,并且您使用的是由不同编译器创建的 dll,这会导致堆损坏或与不匹配相关的其他问题crt.
-
它也可能是
if (IsDebuggerPresent()) DebuggerBreak();的一个实例,这可能是一个很好的问题。这些函数可能是搜索替代方法的好关键字。
标签: c++ c visual-studio visual-studio-2012 dll