Home Search
 You are here: arrow Home

Search Our Site

Latest Additions
Most Visited
Welcome to
CrashMe Application
Tuesday, 20 October 2009 08:44 Last Updated on Tuesday, 20 October 2009 13:08

CrashMe is a simple application that implements several common debug situations and scenarios. As such it is a great help for both; your first steps with WinDbg or if you ever need to reproduce a particular crash within a test environment. Take a look at the screen-shot bellow or simply download it to get a hint of what we are talking about.

CrashMe screen-shot

Note: If you have an interesting situation that CrashMe doesn't cover please drop us a line or send us your code. Other CrashMe fans might be thankful for your contribution.

WinDbg. From A to Z!
Sunday, 01 February 2009 01:00 Last Updated on Tuesday, 20 October 2009 12:32

Foreword by Wanderley Caloni

All the power and flexibility of the Microsoft Debugging Tools package can be diminished by its complexity and learning curve. After all, it is very easy and comfortable to work with the Visual Studio debugger once you begin to use it. Those who advocate the use of a unified tool that does everything, like a cell phone, make the case even worse. However, when the competitive advantage of one tool over another is obvious, there is nothing worse than getting stuck in a situation which is suboptimal for you. As I was thinking about this difficulty I found a presentation written by Robert Kuster that explains all the important details of debugging with WinDbg for novice and experienced programmers. The presentation "WinDbg. From A to Z!" turns out to be just as useful as WinDbg itself because it explains everything from simple things that you should know right away such as setting up symbols and the theory of command types in WinDbg, to the advanced topics such as remote debugging.

The subject covers a set of 111 slides that take one or two hours of careful reading if you do not make tests during the trip. Among the things I have read and reread I found a list of important topics that you should try to keep in mind:
  • The libraries of WinDbg's debug engine (slides 6 and 9)
  • The debug symbols and how they are found by WinDbg (11, 12, 14)
  • Exception handling by the OS and how to debug exceptions (18, 19, 85)
  • How to configure your debugger to operate system-wide (20)
  • Types of commands in WinDbg (22)
  • Configuring symbols and sources in WinDbg (24, 25)
  • WinDbg window options (33)
  • DML: Debugger Markup Language (35)
  • Processes and threads on Windows (26, 27, 29)
  • Commands on threads and locks (31, 55)
  • Memory: Stack details (37, 39, 41)
  • Memory: General commands (43)
  • Memory: Heap commands and examples (45, 49, 51, 53)
  • Useful commands for strings and memory manipulation (66)
  • Evaluating expressions in WinDbg: MASM and C ++ (70, 71)
  • Breakpoints in WinDbg (basic) (81)
  • Breakpoints in WinDbg (advanced) (83, 84)
  • Remote Debugging (very useful!) (87)
  • Choosing the best tool for the problem (great!) (108)
In the end there are two important tips for those who wish to explore the debugging world in more detail: read WinDbg's documentation (which is also great, although much more extensive) and learn assembly (simply essential if you want to solve a variety of problems). If you never took the time for advanced debugging on Windows think about it again. It could take you 2 hours (divide this into 15 minute periods per day!) to read this great tutorial. As a result you might surprisingly end up with an exponentially reduced troubleshooting time for your debug situations.

Who's Online

We have 11 guests online


This weekThis week3837
This monthThis month8477


Members : 256
Content : 5
Content View Hits : 2620279
  up top of page up  

Copyright © 2024 All Rights Reserved.
Page generated in 0.0014 seconds.