【问题标题】:How to find an ignored exception如何找到被忽略的异常
【发布时间】:2009-10-15 22:16:27
【问题描述】:

今晚可能会迟到修复一些错误,但也许 SO 可以帮助我。有谁知道是否有办法“跟踪”一些被忽略的异常发生在哪里?

基本上,我在 System.Drawing 中发现了一些 System.OverflowExceptions,它们导致某些图形无法绘制(红色 X 框综合症)。

问题是,我只能从 Debug 窗口中分辨出来,而我这辈子都无法找到它被抛出的地方。我猜发生这种情况的编码员写了一个

尝试{某事}最后{等等}

或者...

try {something } catch { //Blah blah blah }

就我而言,如果我是 SOL,也许有人可能知道 System.Drawing 中的哪些方法可能导致 StackOverflow 异常...

谢谢!

【问题讨论】:

  • 我猜应该是最后一句中的 OverflowException ;)
  • 您是否尝试将调试器配置为在抛出此特定异常时中断?调试 -> 异常... -> 公共语言运行时异常 -> 系统 -> System.OverflowException
  • 天哪,我不知道你能做到。迪沃,你应该回答这个问题,这样我才能投票给你!
  • 同意,divo,你是我的英雄...在提出问题 18 分钟后修复并回家。

标签: c# .net exception


【解决方案1】:

您可以将调试器配置为中断异常,即使它已被处理。

您可以通过 Debug -> Exceptions... 配置行为。在您的特定情况下,您应该检查 Debug -> Exceptions... -> Common Language Runtime Exceptions -> System -> System.OverflowException


(来源:scatterbright.com

【讨论】:

    【解决方案2】:

    您也许可以使用FxCop/StyleCop 来获取what you want。我不确定您是否需要 custom rule 来找到您的 try/finally 场景。

    【讨论】:

      猜你喜欢
      • 2011-09-12
      • 2017-12-07
      • 2021-04-17
      • 1970-01-01
      • 1970-01-01
      • 2020-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多