Using DrWatson log to debug
- If lately application crash. DrWatson will record it and place the info to a log file.(newer version Windows should have it). Type drwtsn32 or drwatson
- Then, open the log. Look for Fault->
- Start vadump and type
vadump -v -p 1160 |more
-p = is the process ID. (get it from task manager)
in the crashed PC
to get the memory address of the environment.
- If confirm involved module are related to your application.
- Get the pdb file (debug info) file of the related module. (even for release mode module, you can rebuild it and checked the generate debug info. It will still be able to load some additional info without the expense of address changes a lot cause the compiled release module with debug info size is identical to one without)
- Debug the process using IDE - Attach to process.
- The DrWatson should contain offset from the loaded module to the crash location.
Makesure IDE set to read the debug info to ease in reading the crash location in response to real source. If the IDE is super enough to be able load the complete source code. It would even greater. (tough luck so far on the IDE I know off that able to load the complete source code on release mode module) Anyway, given the name appear if any in the disassembly is already good enough. (The prefered IDE would be V.S.NET 2003, more setting during debug process. VS6 too primitive)
- Then, open the log. Look for Fault->
- Start vadump and type
vadump -v -p 1160 |more
-p = is the process ID. (get it from task manager)
in the crashed PC
to get the memory address of the environment.
- If confirm involved module are related to your application.
- Get the pdb file (debug info) file of the related module. (even for release mode module, you can rebuild it and checked the generate debug info. It will still be able to load some additional info without the expense of address changes a lot cause the compiled release module with debug info size is identical to one without)
- Debug the process using IDE - Attach to process.
- The DrWatson should contain offset from the loaded module to the crash location.
Makesure IDE set to read the debug info to ease in reading the crash location in response to real source. If the IDE is super enough to be able load the complete source code. It would even greater. (tough luck so far on the IDE I know off that able to load the complete source code on release mode module) Anyway, given the name appear if any in the disassembly is already good enough. (The prefered IDE would be V.S.NET 2003, more setting during debug process. VS6 too primitive)
Comments