Visual C++ 6 Unleashed

Visual C++ 6 Unleashed

By MICKEY WILLIAMS and David Bennett

Summary

In this chapter, you were introduced to MFC support for debugging and debugging techniques used for MFC. Here you learned about the TRACER.EXE utility and briefly examined AfxDump. You looked at the MFC diagnostic features, such as Trace Output, Check Program Assumptions, the ASSERT_VALID macro, Track Memory Allocations, Detect Memory Leaks, and Use Object Dumps.

You also examined the DevStudio IDE debugger. You learned about the two main compiler configurations, Debug and Release mode, and saw how each builds executables that are customized to each of the configurations. An executable built in the Debug mode was slow but contained debugger information and thus could easily be debugged. The Release mode build was fast but not suited for debugging. You saw how to build the same project with both configurations.

Further on, you saw the characteristics of compiler warning messages and how to set them. You also learned that the Source Browser tool is a great tool for inspecting source code in detail.

Each of the debugger windows was discussed, and you saw how to watch variables using the Variables window and the Watch window. You also examined the role of each of the following: the Call Stack window, Disassembly window, Registers window, QuickWatch window, and Memory window.

Spy++ and its features were introduced, as well as its many views and characteristics.

You saw how to attach to running processes within DevStudio to perform debugging.

You took a look at the Dr. Watson utility, and you saw the best way to set it up to capture and diagnose program and system crashes.

Many methods of debugging and the tools to use with Visual C++ 6.0 were covered here. You now should have enough information to debug your applications more effectively using any of the techniques covered in this chapter.

Share ThisShare This

Informit Network