Using a Symbol Server

A symbol server enables the debugger to automatically retrieve the correct symbol files from a symbol store - an indexed collection of symbol files - without the user needing to know product names, releases, or build numbers. Debugging Tools for Windows includes the required dll symbol server SymSrv. For information about working with the symbol server, see Microsoft Public Symbols.

Using SymSrv with a Debugger

SymSrv can be used with WinDbg, KD, NTSD, or CDB.

To use this symbol server with the debugger, simply include the text srv\* in the symbol path. For example:

set _NT_SYMBOL_PATH = srv*DownstreamStore*SymbolStoreLocation

where DownstreamStore specifies the local directory or network share that will be used to cache individual symbol files, and SymbolStoreLocation is the location of the symbol store either in the form \\server\share or as an internet address. For more syntax options, see Advanced SymSrv Use.

Microsoft has a Web site that makes Windows symbols publicly available. You can refer directly to this site in your symbol path in the following manner:

set _NT_SYMBOL_PATH=srv*DownstreamStore*https://msdl.microsoft.com/download/symbols

where, again, DownstreamStore specifies the local directory or network share that will be used to cache individual symbol files. For more information, see Microsoft Public Symbols.

If you plan to create a symbol store, configure a symbol store for web (HTTP) access, or write your own symbol server or symbol store, see Custom Symbol Stores and Symbol Servers.

Using AgeStore to Reduce the Cache Size

Any symbol files downloaded by SymSrv will remain on your hard drive after the debugging session is over. To control the size of the symbol cache, the AgeStore tool can be used to delete cached files that are older than a specified date, or to reduce the contents of the cache below a specified size. For details, see AgeStore.