Skip to main content

What's New for Debugging Tools for Windows

Updated: February 26, 2010

Highlights in Version 6.12.2.633

This is the current version of Debugging Tools for Windows and is available in the Windows SDK. This release of Debugging Tools for Windows contains many bug fixes and new enhancements. The debuggers are stable and more reliable than previous releases and we recommend that you upgrade to this version.

Here are some of the key changes in this version of Debugging Tools for Windows:

  1. Several bug fixes in extensions to only use public symbols

  2. General BugCheck Analysis Updates including:

    • Bug Check 0x9F Update – Added logic to diagnose bugcheck 0x9F minidumps using new data in Windows 7 added to the 0x9F minidumps by the Kernel and Networking Teams.
      Data includes:
      - All Kernel ExWorkerThreads that process Power IRPs
      - IRPs Associated with any ExWorkerThread
      - IRPs Associated with PnP Completion Queue
      - All Kernel Power IRPs
      - Device Stacks for all IRPS
      - NT_TRIAGE_POWER Structure
      - NT_TRIAGE_PNP structure

    • BugCheck 0xFE Update - Add logic to diagnose bugcheck 0xFE minidumps using new to Windows 7 callback data added by the USB team.

  3. Fixed user-mode minidump generation problem.

  4. Fixed buffer overrun in schannel transport.

  5. Fixed several kernel debugger transport issues.

  6. Fixed problem with debugger reporting incorrect FPO information.

  7. Allowed stack dumps deeper than 65535 if specified explicitly.

  8. Changed ".outmask /a" and ".outmask /d" to be set only instead of or/xor.

  9. The old ADPlus.vbs is being replaced by ADPlus.exe which requires the .Net Framework 2.0. For those cases where the .Net Framework isn't available we are still shipping the older version renamed to adplus_old.vbs. For detailed documentation of the new ADPlus.exe as well as for its new companion ADPlusManager.exe please see adplus.doc located in the same folder as adplus.exe.

Additional details on some of these features can be found in the debugger documentation (debugger.chm). To open this documentation, use Start --> Debugging Tools for Windows --> Debugging Help.

Highlights in Version 6.11.1.404

The following changes have been made to Debugging Tools for Windows:

  • Numerous bug fixes and documentation updates

  • Numerous updates to improve 1394 debugging (see relnotes.txt for details)

  • support using “.process /p …” in kd -kl, so you can see user mode memory in the appropriate process context (which means user mode stacks, !peb, etc.)

Highlights in Version 6.11.1.402

This version has been replaced by version 6.11.1.404 and should not be used.

Highlights in Version 6.10.3.233

In this release, you will find significantly better performance and reliability of the 1394 debug transport, as well as further documentation updates! Additionally, enhancements have been made to .dump, .tlist, .sleep, and several other commands! For further details, please read the RELNOTES.TXT provided in the package.

Highlights in Version 6.9.3.113

In this release, you will find better performance on systems with greater memory as well as those with large CPU counts. Better performance and reliability on transport initialization. Enhancements to dt, sx, z, !defwrites, !sysinfo, !gflags, Symsrv, as well as several others. For further details, please read the RELNOTES.TXT provided in the package.

Highlights in Version 6.8.4.0

In this release, more components of the debugger are now redistributable. You will find enhancements to the !lmi and !exchain commands and Symsrv support for resource-only binaries. Numerous improvements have been made to components and commands, such as: !analyze, DBGEng reliability, live KD for Windows Vista, context handling for .frame, .dumpdebug for minidump debugging, and breakpoint list commands. Also included are updates and advances in the documentation. For further details, read the RELNOTES.TXT provided in the package.

Highlights in Beta Version 6.7.5.1

The following changes have been made to Debugging Tools for Windows:

  • New Features

    • Add %Y{l} format specifier to take a ULONG64 argument and display a source line

    • Add $ntdll[w|n]sym built-in aliases

  • New command-line options

    • Windbg: -lsrcpath to set local source path

    • All: -log[a|o]u to generate Unicode log files

  • Changes to default configuration

    • When loading modules from a user-mode minidump provide available misc and CV record info from dump. This can allow symbols to be loaded in some cases when PE image file is not available.

    • .reload with specific module name now defers loading. Force-loading can be done with /f as usual.

    • SDK content is now installed by default

    • Samples now explicitly default to not building Windows Vista-only

    • .remote pipe names may no longer start with '/'

    • Change symbol lookup order: root\file, root\extension\file, root\symbols\file. Note that you cannot depend on lookup order remaining unchanged.

  • !analyze enhancements

  • New and updated commands: .trap, lmDv, .allow_exec_cmds, .pcmd, .dml_file, gu, .fnent, .pagein, dt, bs, bsc, bm

  • New options for commands: .foreach, .reload, .dump, .dumpcab, x, uf, ln, .call, .open

  • New and updated extensions: !chksym, !cpuid, !dml_proc, !address, !chkimage, !vm, !error

  • Source Server

    • CVS sample scripts

    • Updated documentation

  • Additional Symbol Server support

    • Allow SymSrvNoProxy to apply to WinInet functionality

    • New option to force WinInet or WinHttp regardless of whether Symbol Server is running as a service

  • ExtCpp extension improvements

    • Allow empty strings as default values

    • Add Unicode output methods

  • Better Debugging

    • Improved handling of IA64 trap frames

    • Improved handling of DML content

    • Minidump generation improvements

    • Improved handling of CABs

    • Improved handling of out-of-memory conditions

    • Increased symbol functionality

    • Bugfixes for EXDI targets

  • New and updated Tools

    • Kdsrv now automatically uses IPv4 or IPv6

    • Updates for AutoDump Plus

    • Convertstore: converts a two tier symbol store to a three tier symbol store

For details of all the new features in Debugging Tools for Windows, consult the documentation. To access the documentation, click Start, point to Programs, and then click Debugging Tools for Windows. After the program opens, click Debugging Help.

Highlights in Version 6.6.7.5

The following changes have been made to Debugging Tools for Windows:

  • New UI enhancements

    • Right-click copy support in Watch and Locals windows

    • Source syntax coloring

    • MDI emulation mode

    • Hover evaluation when a syntax parser is available for a source file

    • Option to allow global disable of hover evaluation

    • Added kd connection property page for USB 2.0

    • New GUI to setup a VPC-kd connection

    • New options in Resolve Unqualified Symbols in the Debug Menu

    • New Copy Formatted command in the Edit menu for copying rich text

    • New -ui command line options

    • Equivalent to -premote added to Connect in File menu

    • Updated appearance of styles and toolbars

    • Toggle QuickEdit Mode from Options in View menu

    • New Event Timestamps menu under the View menu

    • Enhanced docking options

    • Easier view of thread names

    • Text completion using the Tab key

    • Ability to copy the filepath to the clipboard from a source window

    • New command browser window with command linking

    • New toolbar button for the process and thread windows

    • Debugger markup language (DML) for enhanced output from the debugger and extensions

  • New Source Server features

    • Additional support for Subversion

    • Set which srcsrv.ini file to use via an environment variable

    • HTTP functionality

    • Environment variables can be used in execution commands

    • Better handling of source code control tools that need input while extracting a source file

  • Additional Symbol Server support

    • Support for coexisting compressed and uncompressed files

    • Automatic detection of symbol server stores in symbol paths

  • !analyze enhancements

    • Initial support for plug-in analyzers

    • Enhancements for bugchecks, exceptions, hangs and /GS

  • New and updated extensions

    • in kdexts.dll: !process

    • in ntsdexts.dll: !htrace

    • updates to !token, !sd and !peb

    • Extensions can provide pseudo-registers

    • Many enhancements to ExtCpp extension framework, plus all ExtCpp source code is now in the package

  • New and updated commands: .dumpdebug, .frame, .ignore_wow_kd_context, .cmdtree, .cache, .readmem, .typeopt, .f+, .f-, .pagein, .idle_cmd, sxr, lse, pt, tt, .dml_start, r., up, ph, th, uf, uil, .extmatch pct, tct, .copysym, $$>a<, utr

  • New options for commands: bl, ld, .printf, .kill, .detatch, .abandon, bm, dt, dv, lm, fp

  • New symproxy feature

    • Can use file pointers for http symbol stores

  • Better debugging

    • Better detection of WOW64 situations

    • Retrieval of non-running thread stacks

    • Improved functionality with psuedo-registers

    • Updated disassembler with new instruction support

  • Updated tools

    • Significant update of AgeStore.exe

    • Updates for AutoDump Plus

For details of all the new features in Debugging Tools for Windows, consult the documentation. To access the documentation, click Start, point to Programs, and then click Debugging Tools for Windows. After the program opens, click Debugging Help.

Highlights in Beta Version 6.6.3.5

The following changes have been made to Debugging Tools for Windows:

  • New UI enhancements

    • Right-click copy support in watch/locals window

    • Source syntax coloring

    • MDI emulation mode

    • Hover evaluation when a syntax parser is available for a source file

    • Added kd connection property page for USB 2.0

    • New options in Resolve Unqualified Symbols in the Debug Menu

    • New Copy Formatted command in the Edit menu for copying rich text

    • New -ui command line options

    • Equivalent to -premote added to Connect in File menu

    • Updated appearance of styles and toolbars

    • Toggle QuickEdit Mode from Options in View menu

    • New Event Timestamps menu under the View menu

    • Enhanced docking options

    • Easier view of thread names

  • New Source Server features

    • Additional support for Subversion

    • Set which srcsrv.ini file to use via an environment variable

  • Additional Symbol Server support

    • Support for coexisting compressed and uncompressed files

  • !analyze enhancements

    • Initial support for plug-in analyzers

    • Enhancements for bugchecks, exceptions, hangs and /GS

  • New and updated extensions

    • in kdexts.dll: !process

    • in ntsdexts.dll: !htrace

    • updates to !token, !sd and !peb

  • New and updated commands: .dumpdebug, .frame, .ignore_wow_kd_context, .cmdtree, .cache, .readmem, .typeopt, .f+, .f-, .pagein, .idle_cmd, sxr, lse, pt, tt

  • New options for commands: bl, ld, .printf, .kill, .detatch, .abandon, bm, dt

  • New symproxy feature

    • Can use file pointers for http symbol stores

  • Better debugging

    • Better detection of WOW64 situations

    • Retrieval of non-running thread stacks

    • Improved functionality with psuedo-registers

For details of all the new features in Debugging Tools for Windows, consult the documentation. To access the documentation, click Start, point to Programs, and then click Debugging Tools for Windows. After the program opens, click Debugging Help.

Highlights in Version 6.5.3.8

The following changes have been made to Debugging Tools for Windows:

  • Compatibility updates for Windows Vista and Windows Server 2008

  • New EngExtCpp C++ extension framework:

    • This is a Developer Preview, and APIs are subject to change.

    • Headers and samples can be installed by choosing the SDK component during installation of Debugging Tools for Windows.

  • Win9x user-mode compatibility fixes:

    • Requires MSLU. See debugger documentation for details.

    • Win9x debugging is still not a supported scenario.

  • USB 2.0 kernel debugging support. Requires a Windows Vista target computer and some additional software. See debugger documentation for details.

  • New tool available: DBH.

  • New commands available: .allow_image_mapping, .apply_dbp, .prompt_allow, .step_filter, and .suspend_ui.

  • New options available for the lm, uf, .attach, .cxr, .foreach, .opendump, and .printf commands.

  • All debuggers now support .wtitle.

  • New pseudo-register: $ea2.

  • New automatic aliases: $CurrentDumpArchiveFile, $CurrentDumpArchivePath, $CurrentDumpFile, $CurrentDumpPath, $ntsym, $ntnsym, and $ntwsym.

  • New extensions available:

    • in exts.dll: !bitcount.

    • in kdexts.dll:!sysinfo.

    • in wmitrace.dll: !buffer, !ckcl, !regtable, and !setprefix.

    • in wdfkd.dll: !wdfdevice, !wdfdevicequeues, !wdfdriverinfo, !wdfextendwatchdog, !wdfgetdriver, !wdfldr, !wdfqueue, !wdfrequest, !wdfsetdriver, and !wdftraceprtdebug.

  • New extension module fltkd.dll. This contains !cbd, !contextlist, !ctx, !filter, !filters, !fltobj, !frame, !frames, !instance, !irpctrl, !msgq, !namecachelist, !port, !portlist, !relobjs, !stats, !streamlist, !traceflags, !tracelevel, !tree, !volume, and !volumes.

  • New options available for the !search extension.

  • New symbol quoting syntax.

  • WinDbg UI changes, including:

    • "Edit->Clear Command Output" allows clearing partial text from command window.

    • "File->Open Executable" remembers process arguments and start directory.

    • Cascading and tiling of undocked windows.

    • Watch window and Locals window context option to invoke 'dt' command.

  • Source Server support for Subversion version control system.

  • Updated 1394 kernel debugging drivers.

  • Updates to many sections of the debugger documentation (debugger.chm).

  • New documentation file, Kernel_Debugging_Tutorial.doc, aimed at customers who are familiar with other debugging tools and want to learn how to use WinDbg for kernel debugging.

  • Many improvements to the !analyze extension.

  • Numerous fixes to bugs in various commands and extensions reported by customers.

For details of all the new features in Debugging Tools for Windows, consult the documentation. To access the documentation, click Start, point to Programs, and then click Debugging Tools for Windows. After the program opens, click Debugging Help.

Highlights in Version 6.4.7.2

The following changes have been made to Debugging Tools for Windows:

  • New SymProxy tool. See the details below.

  • New WinDbg UI Themes. These are preconfigured WinDbg workspaces that contain a useful configuration of debugging information windows. You can find documentation in Themes.doc.

  • New options for the wt and .printf commands. New options for the !Name2EE, !dumpstackobjects, !dumpobj, !dumpcollection, !dumpdomain, !eeheap, !dumpheap, !clrstack, !address, and !heap extensions. New "ReqHost" option for the TCP transport.

  • New commands: gc, .event_code, and .fnret. New extensions: !stl, !xpoolmap, !DumpField, !dumpacpi, !dumpcpuinfo, !dumpcpumicrocode, !dumpcpuspeed, !dumpmachineid, !dumpregisters, !dumpsmbios, !findstack, !dumpMethodSig, !DumpSig, !dumpRuntimeTypes, and !homedir. New pseudo-registers and functions: $fnsucc() and $retret64.

  • New extension module ks.dll, containing !allstreams, !automation, !devhdr, !dhdr, !dump, !dumpbag, !dumpcircuit, !dumplog, !dumpqueue, !enumdevobj, !enumdrvobj, !eval, !findlive, !forcedump, !graph, !help, !kshelp, !libexts, !objhdr, !ohdr, !pchelp, !pciaudio, !pciks, !shdr, and !topology.

  • Symbol server support for cascading downstream stores. You can now use multiple downstream stores to cache symbols sequentially. If one store is inaccessible, the chain is not broken.

SymProxy now allows you to create a single HTTP symbol server in your network to which all of your debuggers can point. This has the benefit of pointing to multiple symbol servers (both internal and external) with a single symbol path, handling authentication, and increasing performance through symbol caching. You can find documentation in symhttp.doc.

Highlights in Beta Version 6.4.4.4

The following changes have been made to Debugging Tools for Windows:

  • New tools, including AgeStore and rtlist.

  • New options for the e, g, s, x, .attach, .create, .dump, .logopen, .open, .process, .shell, .thread, and .time commands. The .restart command now works remotely. New options available for the !list extension.

  • New commands: dpa, dpu, ub, .extpath, .scroll_prefs, .flash_on_break, .sound_notify, !can_write_kdump, !GCHandleLeaks, !GCHandles, and !StopOnException.

  • WinDbg UI changes, including:

    • Memory Window: Dynamic column count auto fitting, line scrolling, and new display formats.

    • Watch/Locals Windows: "tab" switching, F2 to enter edit mode, and opening a memory window against variable entries.

    • Scratch Pad: For associating contents with a file.

    • Command Window: New coloring and text marking options, and history that can be opened from a file.

    • Closed windows that now retain their state.

    • User-loaded extensions that are saved in the workspace.

  • Many improvements to the !analyze extension.

  • Numerous bug fixes to various commands and extensions reported by customers.

Highlights in Version 6.3.17

The following changes have been made to Debugging Tools for Windows:

  • Support for the next generation of Windows Vista and Windows Server 2008.

  • New user interface (UI) management capabilities in WinDbg.

  • Many improvements to the !analyze extension.

  • Improved extension interface documentation (debugext.chm). If you want to access this documentation or build debugger extensions, you should perform a custom install of Debugging Tools for Windows and select all features.

  • The ability to execute a series of debugger commands programmatically or create a more complicated "program" by using flow control. This allows you to conditionally execute commands or even pipe the output of one command into another. New control flow tokens include .foreach, .do, .for, .while, .if, .elsif, .else, .catch, .break, .continue, and .leave. Aliases are used as the "local variables" in these programs.

  • Multiple new options for setting aliases.

  • Numerous bug fixes to various commands and extensions reported by customers.

WinDbg now features enhanced UI management capabilities. Support for window docking, window tear-off, and window tabs has been added to allow users more flexibility in configuring the user interface.

Some features of the new WinDbg UI include:

  • Window docking
    Windows that are part of the frame are "tied" to the frame, and stretch and shrink when the main debugger window frame is changed.

  • Window tear-off
    WinDbg windows can "float" outside the frame and do not change or move when the main WinDbg frame is moved. Windows that are torn off the main frame are still child windows of WinDbg, and are minimized and maximized with the frame and do not show up on the task bar.

  • Window tabs
    Docked windows can be tabbed together, allowing multiple windows to be layered while providing easy access to the windows under the currently visible one.

Tips for using the new WinDbg UI:

  • At startup, all WinDbg UI windows are in an "undocked" state. To dock the window, double-click it or drag it into the main WinDbg frame window.

  • To tab a window, drag the window to the other window to which you want to tab it, moving the mouse to the center of the window. Drop it when you see the outline of the dragged window match the frame of the other window. Switch between the tabbed windows by pressing CTRL+TAB.

For full details, see the Debugging Tools for Windows help file.

Highlights in Beta Version 6.3.5

The following changes have been made to Debugging Tools for Windows:

  • New support for managed code debugging that requires Windows Vista and Windows Server 2008.

  • Many improvements to the !analyze extension.

  • Internal debugger support for Unicode.

  • Numerous new options and many bug fixes in SymChk and SymStore.

  • New options for the bp, bm, bu, ba, dt, d, s, x, and .logopen commands. New options to DbEngPrx. New options to the !process and !thread extensions.

  • Numerous bug fixes to various commands and extensions reported by customers.

Highlights in Version 6.2.13.1

The following changes have been made to Debugging Tools for Windows:

  • New debugger extension interface documentation. To install this documentation, perform a custom install of the package and select all features.

  • New commands, including .send_file, .record_branches, .ignore_missing_pages, and .quit_lock, .ttime, .fpo.

  • New options to the dv command.

  • New d[d|q|p]p command that can walk one level of pointer indirection for data on the stack.

  • Numerous improved debugger extensions, including !chkimg, !exchain, !verifier, !runaway, and !vm.

  • New options for the SymChk and SymStore tools.

  • Updated IEEE 1394 debugging drivers.

  • x64 debugging updates.

  • Resolution of all reported bugs.

Rate: