You get huge development advantages with Microsoft Visual Studio .NET 2003—but you need a new bag of debugging tricks to take full advantage of them in today’s .NET and Win32 development worlds. Learn lethally effective, real-world application debugging techniques for .NET Framework 1.1 and Windows with this fully updated programming guide. Debugging expert John Robbins expands the first edition of his classic debugging book with all-new scenarios and bug-killing tools, tips, and techniques. You’ll see every .NET and Windows debugging scenario here—from XML Web services and Microsoft ASP.NET to Windows services and exceptions. Along with John’s expert guidance, you get more than 6 MB of his battle-tested source code—for the tools and tactics you need to ship better software faster!
Topics covered include:
- Where bugs come from and how to think about solving them
- Debugging during coding
- Operating system debugging support and how Win32 debuggers work
- Advanced debugger usage and .NET debugging with Visual Studio .NET
- Advanced native code techniques with Visual Studio .NET and WinDBG
- Extending the Visual Studio .NET integrated development environment
- Managed exception monitoring
- Flow tracing and performance
- Finding source and line information with just a crash address
- Crash handlers
- Debugging Windows services and DLLs that load into services
- Multithreaded deadlocks
- Automated testing
- The Debug C run-time library
- A high-performance tracing tool for server applications
- Smoothing the working set
- Appendixes: Reading Dr. Watson log files, plus resources for .NET and Windows developers
CD-ROM features:
- 6+ MB of professional-level source code samples written in Microsoft Visual C++, Visual C#, and Visual Basic .NET
- Debugging Tools for Windows
- Microsoft .NET Framework 1.1 SDK
- Windows Application Compatibility Toolkit (ACT)
In the predecessor volume of
Debugging Applications for Microsoft .NET and Microsoft Windows, which dealt with Visual Basic 6, John Robbins broke new ground by codifying the techniques and strategies involved in debugging Microsoft Windows applications. In this tremendously revised and much longer version (in keeping with Microsoft's substantial shift to the .NET architecture), Robbins achieves great progress in making a proper professional discipline out of debugging--and in showing how to design software to keep bugs from appearing in the first place.
The greatest value of Robbins' work is in his treatment of bugs' origins in flawed software design and their later manifestation in faulty coding practice. He explains in great detail, for example, how to use assertions (in concert with error handling) to keep bad data from getting into software modules and causing trouble. This coverage is why your development team should read this book before getting too far down the development path.
If you're already done with your software system and just can't make it work right (and, naturally, the Deadline of Death is looming), this book offers hope as well. Want to write a method that you invoke manually only when the program is at a breakpoint in the debugger? This book shows how. Need lots of details on how to add assembly-language code to your Visual C++ .NET software? You'll find them here. There's a lot of information about how debuggers do their work in general, too. To put it concisely, this book contains a career's worth of information on how to keep bugs to a minimum and track them down when they occur. --David Wall
Topics covered: How to design Microsoft Windows software to minimize design flaws, implement designs with as few software errors as possible, and use diagnostic tools and techniques to squash bugs that make it into your systems. All the latest Visual Studio .NET tools get attention, as do techniques for getting the most out of those tools. Specific coverage goes to strategies for fixing thread deadlock problems, resolving memory troubles, and reading Dr. Watson dumps.