[information on minidumps and Visual Studio; courtesy of the very knowledgeable Andy Pennell, our former dev lead][information on windbg][information on symbol server][how to use a symbol server with visual studio]
This is an unfortunate topic. Many people would like VS 2005 to natively support managed minidumps as well as it supports native minidumps. I'll say it definitively - VS 2005 will not support managed minidumps any better than VS 2003 supports managed minidumps.
The interesting thing is that VS 2003 actually does support postmortem debugging of managed applications. It's done using an NTSD (a low-level debugger) extension DLL, called SOS.dll (Son of Strike). I presented on this at TechEd Europe in session DEV450 (be sure to check out the video and demo materials if you have access).
Getting all this set up requires a good amount of steps, so let's get started:
The first step is to download Debugging Tools for Windows. This includes SOS.dll, as well as several lightweight debuggers and other command-line tools useful for low-level debugging. Once this package has been installed, you'll also need symbols for some crucial .NET framework assemblies. The easiest way to do this is to get set up to use Microsoft's public symbol server. Create an environment variable (right-click on My Computer, Properties, Advanced Tab) and enter this:
Name: _NT_SYMBOL_PATHValue: symsrv*symsrv.dll*c:\symbols*http://msdl.microsoft.com/download/symbols
Both Visual Studio and the Debugging Tools for Windows will now download symbols as necessary and use c:\symbols as a cache. Watch out, though, some significant data will be downloaded with this setup. Your other alternative is to go download a Windows symbols package probably somewhere between 100-200 megabytes. You'll surely download less data total if you set up the symbol server and cache.
Next we need a dump to analyze. You'll want to create a full dump (Minidump with Heap in VS) of the managed process in question for full usefulness. There are several ways to do this - the easiest is to attach with Visual Studio in Native mode, do a break, then select Debug->Save Dump As... Also, some scripts are included in Debugging Tools for Windows which allow dumps to be made automatically when certain events occur, like process exit or first- or second-chance exceptions. One of these is adplus.vbs.
Now that the dump has been created, you can open the .dmp file in Visual Studio, press F5 on it and start debugging. Once you've clicked through the prompts and symbols have been loaded, open the immediate window and type. ".load sos" Once the extension loads successfully you can type !Help and be on your way analyzing the state of your managed application as captured in the dump.
(if you follow all these steps and things don't work, read the documentatation that comes with these tools. It is quite good. Failing that, I admit that I really won't be able to help you very well)