Debugging Tools for Windows

Debugger Engine Overview

The debugger engine (DbgEng.dll), typically referred to as the engine, provides an interface for examining and manipulating debugging targets in user mode and kernel mode on Microsoft Windows.

The debugger engine can acquire targets, set breakpoints, monitor events, query symbols, read and write to memory, and control threads and processes in a target.

You can use the debugger engine to write both debugger extension libraries and stand-alone applications. Such applications are referred to as debugger engine applications. A debugger engine application that uses the full functionality of the debugger engine is called a debugger. For example, WinDbg, CDB, NTSD, and KD are debuggers; the debugger engine provides the core of their functionality.

Engine Concepts:

Debugging Session and Execution Model

Client Objects

Input and Output

Examining and Manipulating Targets:

Targets

Events

Breakpoints

Symbols

Memory

Threads and Processes

Build machine: CAPEBUILD