【问题标题】:Debugging assistance with Windows Error Reporting for .NET使用适用于 .NET 的 Windows 错误报告的调试帮助
【发布时间】:2014-03-23 09:46:46
【问题描述】:

当我无法在我的机器上重现问题时,谁能向我解释如何调试在用户机器上发生的 System.NullReferenceException?我不知道如何确定错误的来源/位置,因为我无法重现它。

用户正在运行该应用程序,并且在某些时候出现了 Windows 错误报告

“应用程序”已停止工作。 Windows 可以在线检查问题的解决方案。

由于我无法手动重现问题,我是否可以使用所有“问题签名”信息来确定问题在应用程序中的确切位置?

【问题讨论】:

  • 你应该能够得到一个可以加载到windbg的dmp文件(你必须下载windows调试工具),当你点击!analyze -v命令时,它会显示发生错误的堆栈。
  • 谢谢你,彼得。我希望用户有一个他可以提供给我,所以我一旦发现就会在这里报告。
  • 如果您有 Visual Studio 2010 Pro 或更高版本,将 dmp 文件直接加载到 Visual Studio 中也可能会提供有用的信息(我的经验是使用 windbg)。
  • 我在哪里可以告诉用户找到转储文件?肯定会有(我从未明确编写过任何代码来从应用程序创建转储文件,但希望 .NET 或 Windows 为我处理?)再次感谢。
  • 另外,这个链接似乎暗示我可以在没有 dmp 文件的情况下做到这一点?虽然我无法从这个链接中准确理解如何做到这一点,因为我不是专家,而且这没有一步一步的细节。 blogs.msdn.com/b/oanapl/archive/2009/01/30/…

标签: c# .net exception-handling nullreferenceexception


【解决方案1】:

经过一段时间的努力,我最终能够破译并使用此页面 (http://blogs.msdn.com/b/oanapl/archive/2009/01/30/windows-error-reporting-wer-and-clr-integration.aspx) 上的说明找到未处理异常的位置。

名称:MyApplication.Form_MyForm.Dispose(Boolean)

不幸的是,虽然它确实指出了发生异常的特定表单,但由于异常在 Form.Dispose 方法中,而不是我编写的方法之一,我不确定我能做些什么来排除故障进一步。

【讨论】:

    猜你喜欢
    • 2011-10-26
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-15
    • 1970-01-01
    • 2015-05-19
    相关资源
    最近更新 更多