[xplorer˛] — Program crash analysis
home » blog » 22 June 2008


"Program aborting:
Close all that you have worked on.
You ask far too much."

Random Heiku

I can't admire windows vista. Disgusting operating system. Everywhere you look at a stupid design decision passed on as "progress". Could it be that the same management team from Redmond is also running heathrow airport T5 security ? Mass evacuation of common sense!

Take crash dump analysis. All older windows flavors used to come with a system tool called Doctor Watson. It is a small executable, just sitting there in the system folder, hurting noone. But the same mentality that considers T-shirt art as terrorist threat, clearly saw a security risk with Dr Watson, so they have removed it from vista. For most people this change is inconsequential, but it hurts small ISVs trying to troubleshoot program crashes in remote user computers.

Dr Watson when properly setup will automatically start whenever some program on your computer crashes, and will gather useful information about the crash and place it in a log file (usually C:\Documents and Settings\All Users\Application Data\Microsoft\Dr Watson\drwtsn32.log). I can use that information to see which part of xplorer˛ failed (most likely a rogue shell extension). I can see the execution context, resident DLLs, the stack trace, all in a smallish file that users with problems can easily zip and email to me for analysis. That's how xplorer˛ improves with time, eliminating the odd bug.

In vista we lost the simplicity of Dr Watson for windows error reporting. You have all seen that crash dialog window that says "program XYZ has stopped responding, send details to microsoft..." When you click on Send button, your crash details are sent somewhere in Redmond and 3rd party developers can see all this information if they join windows this WER scheme. The joining requirements include all microsoft certifications and stock market flotation <g>. It's a big hassle for the small guy, that's why I haven't joined.

I have read some workarounds that allow the creation of a full crash dump file through windows task manager. This file can be opened by developer studio so it is a possible replacement for dr watson's log file. The snag is that this file is hundreds of megabytes big, so sending it by email to the developer is very awkward.

But all is not lost. I have done some experiments and it looks like the old dr watson will work in vista with some coercing. Here are the steps:

  1. Get the old drwtsn32.exe program from any windows XP installation.
     
  2. Chances are this executable won't run for vista, so edit its properties to force it in XP/SP2 compatibility mode.
     
  3. Run the doctor and setup its running options as here. Note the location of the crash log file path, or even change it to taste.
     
  4. Install Dr Watson as the JIT debugger. The simplest approach would be to open an elevated console window with administrator privileges and type drwtsn32 -i from within the folder you've "installed" your watson. The registry will end up looking like this. Notice that I have edited the program location to E:\nikos\desktop\drwtsn32.exe since I didn't put the file in the system folder. If you have another debugger installed already better first backup the registry key HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug so you can restore it later.

That's it! Now whenever something crashes, Dr Watson will run and generate useful crash statistics which developers like me can use to troubleshoot your problems. Don't forget to provide as much detail as you can with your reports so that I can reproduce the issue.

If you want to turn off dr watson just set the registry value HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Auto back to 0.

Post a comment on this topic

 

 

What would you like to do next?

Reclaim control of your files!
  • browse
  • preview
  • manage
  • locate
  • organize
Download xplorer2 free trial
"This powerhouse file manager beats the pants off Microsoft's built-in utility..."

download.com
© 2002—2008 Nikos Bozinis, all rights reserved