Disabling Auto Expansions in the VS 2003 C++ debugger
This is an undocumented feature. It is not supported by Microsoft. It may change or cease to exist in future versions. Do not rely on this information. It is provided for your convenience only. If it doesnt work, please do not complain or call Microsoft support. It if does work, hoorah.
In Visual Studio 2003 the C++ debugger expands structs and classes and displays the first three members automatically. This makes tooltips etc much more useful, but for some classes and remote debugging this can really hurt debugger performance.
You can disable this auto-expansion by adding an item like
$Generate=false
in the [Autoexpand] section of autoexp.dat.
This works for VS 2003 only (and the related Xbox debugger).
MSFT disclaimer: This posting is provided "AS IS" with no warranties, and confers no rights.
Comments
- Anonymous
January 25, 2004
Autoexpansion is the #1 reason to use the VS debugger over WinDBG. It's a real pity this feature (in particular, extending the debugger by writing your own autoexpasion DLLs) is so badly documented. - Anonymous
January 26, 2004
There should have been an "IMHO" in my comment, of course. - Anonymous
January 29, 2004
Well I'm not sure I agree that this is the #1 reason, but in case anyone is wondering what Ziv is talking about, lookup the "EEAddIn" in VS7.0/7.1. A reduced version of this API is also available in VC6.0, though was not documented. - Anonymous
January 30, 2004
Exactly, You know, John Robbins explained about EEAddIn in his book, Debugging Applications For .NET and Windows. I think that book is a great resource for .NET and Windows developer. :-) - Anonymous
January 30, 2004
Thank you for your information!
(I am checking your blog everyday)