Dumps
This topic applies to:
Visual Studio Edition |
Visual Basic |
C# |
C++ |
J# |
Express |
No |
No |
No |
No |
Standard |
Yes |
Yes |
Yes |
Yes |
Pro/Team |
Yes |
Yes |
Yes |
Yes |
Dump files, previously called crash dumps, allow you to save program information for debugging at a later time. The Visual Studio debugger can load dump files created by Visual Studio or by other programs that generate dump files. You can also save dump files, but only from native applications.
Dumps can be particularly useful if you are testing a program on a machine that does not have source files or PDB Files (C++). When a crash occurs, you can save a dump file on that machine and debug it later on the build machine or another machine that has the source files and PDBs.
How to Create a Dump
There are several ways to create a dump:
While you are debugging a native process in Visual Studio, you can save a dump from the Debug menu. For more information, see How to: Save and Open Dump Files.
If you have Just-In-Time debugging enabled, you can attach to a crashed process running outside the debugger, break the process, then save a dump file. For more information, see How to: Save and Open Dump Files.
You can create a dump using the UserDump utility, which is part of the OEM Support Tools package. You can download a copy from https://download.microsoft.com/download/win2000srv/Utility/3.0/NT45/EN-US/Oem3sr2.zip.
You can create a dump using the Autodump+ (AD+) utility, which is part of Microsoft Debugging Tools for Windows. You can download a copy from https://www.microsoft.com/ddk/debugging.
Debugging a Dump
The Visual Studio debugger can read dump files that contain information on managed code, unmanaged code, or a mixture of both.
For native code, you can use the normal debugger windows to view dump information.
For managed code, you cannot use the normal debugger windows to view dump information. Instead, you must use a tool called SOS that displays information in the Command window.
The following sections contain additional information on debugging a dump: