How to analyse WERInternalMetadata.xml file generated by Windows Crash Reporter?

前端 未结 1 1699
太阳男子
太阳男子 2020-12-16 15:42

A .Net 4.0 app keeps crashing for a user, but just for him, I could not reproduce the bug. He attached the WERInternalMetadata.xml file generated by the Windows

相关标签:
1条回答
  • 2020-12-16 15:53

    Firstly, here's what's in that WER trace:

    <Parameter0>rstvshowtracker.exe</Parameter0> - your exe
    <Parameter1>1.0.3842.33258</Parameter1> - version of your exe
    <Parameter2>4c374e79</Parameter2> - exe timestamp
    <Parameter3>mscorlib</Parameter3> - assembly / module
    <Parameter4>4.0.0.0</Parameter4> - assembly version
    <Parameter5>4ba1da6f</Parameter5> - assm timestamp
    <Parameter6>1620</Parameter6> - methodDef token of faulting method 
    <Parameter7>14</Parameter7> - IL offset of faulting instruction
    <Parameter8>System.IO.FileNotFoundException</Parameter8> - exception
    

    You could use WinDBG and SOS to find out what that method is (e.g. 1620). See the example here on how to do it: http://blogs.msdn.com/b/oanapl/archive/2009/01/30/windows-error-reporting-wer-and-clr-integration.aspx

    ...Alternatively, you could hook up the unhandledException event in your application, and print out the exception stack trace to a log file, to see what caused the issue; e.g.

    static void MyHandler(object sender, UnhandledExceptionEventArgs args) 
    {
       Exception e = (Exception) args.ExceptionObject;
       // print out the exception stack trace to a log
    }
    
    public static void Main() 
    {
       AppDomain currentDomain = AppDomain.CurrentDomain;
       currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyHandler);
    }
    
    0 讨论(0)
提交回复
热议问题