What's New for Debugging Tools for Windows

Updated: April 29, 2008
Looking for help with your personal computer?

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.

Top of pageTop of page

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.


Top of pageTop of page