117 out of 232 rated this helpful - Rate this topic

Windows Debugging

Debugging Tools for Windows is a collection of debuggers and related tools. Starting with Windows 8, 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 Windows Driver Kit (WDK). Debugging Tools for Windows is included in WDK. You can find more information about how to get the integrated environment here.

If you do not need the WDK, you can get Debugging Tools for Windows as part of the Windows Software Development Kit (SDK) for Windows 8. You can find more information about how to get the Windows SDK for Windows 8 here.

If you want to download only Debugging Tools for Windows, install the Windows SDK; during the installation, check the Debugging Tools box, and uncheck 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 have six available debugging environments:

  • Visual Studio with integrated Windows debuggers
  • Microsoft Windows Debugger (WinDbg)
  • Microsoft Kernel Debugger (KD)
  • NTKD
  • Microsoft Console Debugger (CDB)
  • Microsoft NT Symbolic Debugger (NTSD)

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. For detailed descriptions of the different environments, see Debugging Environments.

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 cannot use the Visual Studio debugger to debug kernel-mode code. To debug kernel-mode code, you must use the Windows debugger integrated with Visual Studio, WinDbg, KD, or NTKD.

The Windows debuggers can run on x86-based or x64-based processors, and they can debug code that is 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 is 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 Preview

  • Windows 8

  • Windows 7 and Windows Server 2008 R2

  • Windows Vista and Windows Server 2008

  • Windows XP and Windows Server 2003 R2

Note  There are some restrictions to the supported versions of Windows depending on which debugging environment you are using. For example, Visual Studio with the integrated Windows debugger does not run on a host computer with a version of Windows prior to Windows 7. More information is here.

New for Windows 8.1 Preview

New for Windows 8

For Windows 8, we have integrated the Windows debuggers into Visual Studio. We have also integrated the driver development and build environment into Visual Studio. So now you can develop, build, and debug both kernel-mode and user-mode components all from Visual Studio. We have added support for debugging over a network connection or a USB 3.0 connection, and we have improved support for debugging optimized code and inline functions. For more information, see these topics:

We have also added two new sets of debugger extension commands. The USB 3.0 extension commands display information maintained by the drivers in the USB 3.0 stack. The RCDRKD extension commands display formatted trace information written by drivers that use the new always-on WPP recorder. For more information, see these topics:

In Windows 8, you can use the Windows debugger to debug Windows Store apps. The Debugging Tools for Windows package includes a new tool, PLMDebug.exe, that enables you to take manual control of suspending, resuming, debugging, and terminating Windows Store apps.

The Windows 8 Debugging Tools for Windows package does not support Windows 2000.

Sos.dll is a component that is used for debugging managed code. The Windows 8 Debugging Tools for Windows package does not include any version of sos.dll. To get sos.dll for .NET Framework 1.x, download the Windows 7 Debugging Tools for Windows package. For later versions of .NET Framework , sos.dll is included in the .NET Framework installation.

32-Bit and 64-Bit Versions

There are two versions of Debugging Tools for Windows: a 32-bit version and a 64-bit version. For more information, see Choosing the 32-bit or 64-bit Debugging Tools.

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.

Release Notes

For the latest updates and release notes, see Windows Debugging Tools Release Notes.

In this section

 

 

Send comments about this topic to Microsoft

Build date: 7/22/2013

© 2013 Microsoft. All rights reserved.