Clearing up confusion over the proposed crashdump cut
Clearing up confusion over the proposed crashdump cut.
As I posted in my last blog, Scott is soliciting feedback about a proposal to cut support for an old dump format.
There has been some confusion over this, so I wanted to throw in my two cents.
Crashdumps aren’t the only (or recomended) way to save a full-memory dumps. The 'minidump' format is the preferred format for saving dumps of any size. You can save a minidump with heap using '.dump /ma' in windbg/cdb/ntsd. The crashdump format was lacking in many respects, so I encourage everyone to stop using it, even if VS continues to support it.
We sometimes get a request to use dbgeng (the windbg engine) in Visual Studio. I can understand the appeal of this, but honestly it would make no one happy. True windbg users would still use windbg -- no benefit there. VS users would be unhappy because it would feel like windbg. We sometimes take feature ideas from windbg (example: .cxr), and we someday might share more code with windbg, but we are never going to be able to just use their engine.
Only the Win 2k version of Dr. Watson produces crashdumps. Newer version of Windows use minidumps. The latest service pack of Win2k might even use minidumps, I haven’t checked in a while.
This change would prevent you from debugging dumps produced from Win 2k Dr. Watson, which could be a problem for some people. However, there is a great work around -- create your own unhandled exception filter. This is quite easy to do, and would make it easier to support your application. I encourage you to do this even if VS continues to support crashdumps. More on this in an upcoming blog.
Managed minidumps are definitely something that we are thinking about, and something that we desperately want to do. We realize that 'sos' is not the tool for most VS users.