Windows Debugging

Start here for an overview of Debugging Tools for Windows. This tool set includes WinDbg and other debuggers. The driver development environment and the Windows debuggers are integrated into Microsoft Visual Studio.

  • To set up the integrated environment, install Visual Studio and then install the Windows Driver Kit (WDK). Debugging Tools for Windows is included in the WDK. You can get the integrated environment here.

  • If you don't need the WDK, you can get Debugging Tools for Windows as part of the Windows Software Development Kit (SDK) for Windows 8.1. You can get the Windows SDK for Windows 8.1 here.

  • If you want to download only Debugging Tools for Windows, install the Windows SDK, and, during the installation, select the Debugging Tools for Windows box and clear all the other boxes.

Installation directory

These are the default installation directories for Debugging Tools for Windows:

  • C:\Program Files (x86)\Windows Kits\8.x\Debuggers\x64
  • C:\Program Files (x86)\Windows Kits\8.x\Debuggers\x86

Debugging environments

After you install Visual Studio and the WDK, you'll have six available debugging environments.

All of these debugging environments provide user interfaces for the same underlying debugging engine, which is implemented in dbgeng.dll. This debugging engine is called the Windows debugger, and the six debugging environments are collectively called the Windows debuggers.

Note  Visual Studio includes its own debugging environment and debugging engine, which together are called the Visual Studio debugger. The Visual Studio debugger is completely different from Windows debugger. In Visual Studio, you can debug user-mode code by using either the Windows debugger or the Visual Studio debugger. You can't use the Visual Studio debugger to debug kernel-mode code. To debug kernel-mode code, use the Windows debugger integrated with Visual Studio, WinDbg, KD, or NTKD.

Windows debuggers

The Windows debuggers can run on x86-based or x64-based processors, and they can debug code that's running on x86-based or x64-based processors. Sometimes the debugger and the code being debugged run on the same computer, but other times the debugger and the code being debugged run on separate computers. In either case, the computer that's running the debugger is called the host computer, and the computer that is being debugged is called the target computer. The Windows debuggers support the following versions of Windows for both the host and target computers.

  • Windows 8.1 and Windows Server 2012 R2

  • Windows 8 and Windows Server 2012

  • Windows 7 and Windows Server 2008 R2

  • Windows Vista and Windows Server 2008

Note  There are some restrictions to the supported versions of Windows, depending on which debugging environment you're using. For example, Visual Studio with the integrated Windows debugger doesn't run on a host computer with a version of Windows prior to Windows 7.

Windows 7 Debugging Tools for Windows

To debug code running on Windows XP or Windows Server 2003, get the Windows 7 Debugging Tools for Windows package, which is included in the Microsoft Windows Software Development Kit (SDK) for Windows 7 and .NET Framework 4.0. If you want to download only Debugging Tools for Windows, install the SDK, and, during the installation, select the Debugging Tools for Windows box and clear all the other boxes.

Note  You might have to uninstall Microsoft Visual C++ 2010 Redistributable components before you install the SDK. For more information, see the Microsoft Support website.

Tools and utilities

In addition to the debuggers, Debugging Tools for Windows includes a set of tools that are useful for debugging. For a full list of the tools, see Tools Included in Debugging Tools for Windows.

Additional documentation

For additional information related to Debugging Tools for Windows, see Debugging Resources.

In this section

 

 

Send comments about this topic to Microsoft

Build date: 1/27/2014

Show:
© 2014 Microsoft. All rights reserved.