您能否使用VS2008调试器忽略来自第三方dll在特定场所的异常?

时间:2010-09-29 18:47:58

标签: visual-studio-2008 debugging

我正在使用第三方库(Fluent NHibernate),当我在启用“中断所有公共语言运行时异常”的情况下运行时,它会在启动时抛出一个无害的“找不到文件”异常(Debug | Exceptions ... menu)

我意识到我可以取消选中特定的“找不到文件”异常,但如果我的代码中出现其他地方,我就不会休息。

有没有办法(pragma?属性?)来抑制异常,但只有在我认识的那个地方会发生?

3 个答案:

答案 0 :(得分:6)

经过一些挖掘和浏览相关问题之后,我通过不同的路线解决了问题。

原来我关闭了“启用我的代码...”选项(它位于工具/选项/调试中)。启用此选项还会在“例外”对话框中添加“用户未处理”列。

我检查了Common Language Runtime Exceptions旁边的User Unhandled框,并取消选中其他所有内容。

现在,调试器忽略了第三方库中的异常,但是在代码中没有本地处理程序的异常中断 - 正是我想要的。

答案 1 :(得分:2)

我认为在VS中没有这个选项,但也许其他人知道某种方式。

作为替代方案,您可以:

  • 禁用例外
  • 在代码的开头加上一个断点
  • 将程序运行到您的断点
  • 重新启用该异常并继续。

然而,这是手动的,并不能满足您作为永久解决方案的需求。

答案 2 :(得分:0)

启用我的代码......"选项已关闭(它在工具/选项/调试中)。 真的有把戏