【问题标题】:Which form caused my exception?哪种形式导致我的异常?
【发布时间】:2014-01-09 05:39:50
【问题描述】:

MyApplication_UnhandledException事件中,我想截取导致错误的表单。

我在制作表单的屏幕打印时没有问题。

但是我怎样才能找到导致问题的表单(或迭代回最新的表单)?

【问题讨论】:

  • 请注意,表单并不是UnhandledException 的唯一原因。非 UI 对象可以做到。
  • 是的,这就是我写作的原因(或迭代回最新形式):)
  • 我建议你只记录堆栈跟踪然后分析跟踪跟踪,它将包含导致异常的类和方法的名称。然后,如果您将其与屏幕截图进行交叉检查,那将很有帮助。仅在他们已经意识到这一点时才截屏,即使只覆盖您的窗口而不是整个屏幕。

标签: vb.net winforms exception error-handling


【解决方案1】:

您不需要捕获表单的屏幕截图来调试异常的原因,stack trace 应该为您提供所有这些信息,以及更多信息 - 您应该记录这些信息。

【讨论】:

  • 我同意,但也许他想捕捉用户在那一刻所做的事情
  • @ChristianSauer 是的,我对那部分进行了重新措辞。但是,有更好的方法来记录用户数据以进行调试。
  • @ChristianSauer 在用户不知情的情况下在用户的机器上截屏是不公平的。如果用户是您,请继续。
  • 我想捕捉用户输入的内容,所以我可以自己输入并希望“捕捉”错误。
  • @MojoDK 基本上没有办法按照你的要求去做,想想看,一旦应用程序抛出异常,它就会处于损坏状态并有效地关闭。这不是一个非常可靠的解决方案。就像我说的,记录异常的堆栈跟踪并实现适当的记录器框架更可靠。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-19
  • 2011-06-21
  • 1970-01-01
相关资源
最近更新 更多