We have all had programs crashing on us in Windows. Often times program crashes can be solved simply by restarting your computer or rerunning the crashed program. However, other times it may not be so simple: There may be a bug in the program that makes it keep crashing. In this case either you can stop using the program, do research to figure out how to fix it, and/or e-mail the developer hoping they will look into it. In order for you to complete the later two options you need to gather some technical information about the crash.
Sometimes reading the error code displayed by Windows is enough to troubleshoot. Often times, however, it is not. This is where WinCrashReport comes in.
WinCrashReport is a tool that serves as an alternative to Windows’ built-in crash report mechanism. It gathers data about crashed apps and displays them to you in a comprehensive report (either in text or HTML format). You can either a) look at the crash report to try to identify the problem yourself or b) export the crash report – either in full [“Save This Crash Report”] or a quick summary [“Export Selected Crashes”] – and share it with knowlegable techies or the developer.
[Note: WinCrashReport is not for the blue screen of death. It is for when programs crash, not Windows. See BlueScreenView for a tool on reporting/analyzing the blue screen of death.]
Here is a list of information that WinCrashReport provides in its crash reports:
- General Exception Information: Provides general information about the crash, including the date/time that the report was generated, the full path of the crashed application, the process/thread ID that caused the crash, product name/version/company of the crashed application, crash address, exception code, exception description, and exception parameters.
- Strings in the stack: Provides a list of all strings (Ascii and Unicode) found in the stack of the crashed application. Looking at these strings may give you a clue for locating the the cause of the crash.
- Call Stack (Method 1 + Method 2): Provides the call stack of the crashed application. WinCrashReport uses 2 different methods to locate the calls made by the application just before the crash.
- Processor Registers: Provides the values of common processor registers at the momemnt of the crash. If a processor register points to a memory address, WinCrashReport will display the content of the memory address.
- Modules List: Provides the list of all DLLs loaded into the crashed application. For every loaded module, the following information is displayed: module name, address range, module size, product name, product version, file version ,file description, company name, file size, file modified time, and full path of the dll.
- All Threads: Provides the list of all running threads in the crashed application. For every thread, the following information is displayed: Thread ID, start address, stack base, stack size, context switch count, status, priority, creation time, user time, and kernel time.
- Full Stack Data: Provides the list of all values found in the crashed application, at the moment of the crash.
Looking at the above list, obviously most of us – myself included – will have no idea what the information in crash reports mean. However, the developer and people that can help us troubleshoot and/or fix the issue most likely will.
That said, there is two limitations of WinCrashView:
- At this time WinCrashView is not automatic. In other words, you need to manually run it after a program crashes — it will not automatically run and show you crash data. The developer of WinCrashView, NirSofer, says in future versions WinCrashView may be more automated and able to replace Windows’ built-in crash reporting tool.
- At this time WinCrashView can only inspect 32-bit crashed applications. Support for inspecting 64-bit crashed applications will be in the future. This does not mean it won’t work on 64-bit Windows. This means it won’t be able to inspect 64-bit applications — you will still be able to inspect 32-bit applications on 64-bit Windows.
Also note on Windows Vista and above you should run WinCrashView with administrator rights in order to be able to inspect all crashed applications.
You can grab WinCrashView from the links below. Like all NirSoft apps, it is portable, requiring no installation:
Version reviewed: v1.05
Supported OS: Windows 2000 and higher
Download size: 165 KB
WinCrashView homepage [direct download]