The Pre-Loved edit from Shopbop
Buy used:
$9.29
FREE delivery December 4 - 9. Details
Or fastest delivery December 3 - 5. Details
Used: Very Good | Details
Condition: Used: Very Good
Comment: May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less
Access codes and supplements are not guaranteed with used items.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Follow the author

Something went wrong. Please try your request again later.

Debugging Applications for Microsoft® .NET and Microsoft Windows® (Pro-Developer)

3.6 3.6 out of 5 stars 16 ratings

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)

A Note Regarding the CD or DVD

The print version of this book ships with a CD or DVD. For those customers purchasing one of the digital formats in which this book is available, we are pleased to offer the CD/DVD content as a free download via O'Reilly Media's Digital Distribution services. To download this content, please visit O'Reilly's web site, search for the title of this book to find its catalog page, and click on the link below the cover image (Examples, Companion Content, or Practice Files). Note that while we provide as much of the media content as we are able via free download, we are sometimes limited by licensing restrictions. Please direct any questions or concerns to booktech@oreilly.com.


Amazon First Reads | Editors' picks at exclusive prices

Editorial Reviews

Amazon.com Review

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.

About the Author

John Robbins is a co-founder of Wintellect, a .NET and Windows consulting and education firm. Wintellect's mission is to help companies ship better software faster using any Microsoft platform. He concentrates on the emergency debugging and consulting aspects of the business. John also teaches other developers how to better debug so they can solve their development problems faster with his course "Debugging Applications." John has worked on debugging or tuning a wide range of applications from companies such as eBay, Microsoft, and AutoDesk, as well as many corporate development shops. In addition to writing both editions of Debugging Applications, John is a contributing editor to MSDN Magazine where he writes the popular Bugslayer column. Before founding Wintellect, John was one of the first engineers at NuMega Technologies (now Compuware Corporation) where he was a key player in designing, developing and managing many of the most-used and award-winning developer tools in the C/C++, Microsoft Visual Basic, and Java marketplace. Prior to stumbling into software development in his late 20s, John was a paratrooper and Green Beret in the United States Army. Since he no longer gets the same adrenaline high that he used to jumping out of airplanes in the middle of the night onto an unlit, postage-stamp-size drop zone with a full combat load, he rides motorcycles at high rates of speed--much to his wife's chagrin.

Product details

  • Publisher ‏ : ‎ Microsoft Press (April 2, 2003)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 801 pages
  • ISBN-10 ‏ : ‎ 0735615365
  • ISBN-13 ‏ : ‎ 978-0735615366
  • Item Weight ‏ : ‎ 3.85 pounds
  • Dimensions ‏ : ‎ 7.63 x 2.34 x 9.42 inches
  • Customer Reviews:
    3.6 3.6 out of 5 stars 16 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
John Robbins
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Discover more of the author’s books, see similar authors, read book recommendations and more.

Customer reviews

3.6 out of 5 stars
16 global ratings

Top reviews from the United States

Reviewed in the United States on May 7, 2004
This book is a book for the advanced programmer who says "I already know how to build a halfway decent windows app, how do I take my debugging to the next level and deliver truly good apps?"
This book covers real-world debugging issues that plague programmers and are difficult to solve, such as multi-threading and memory issues amongst others. Also this book has several entertaining real-world scenarios that can help give you perspective on debugging.
However this book is not for the beginner, a solid grasp of programming is essential for this book. However those with a good grasp of what programming is about with at least a basic knowledge of .NET will be right at home with this book.
3 people found this helpful
Report
Reviewed in the United States on August 15, 2010
I was impressed with the price of this book (used) and the condition of it as I received it. I am thinking of never buying a new book again. The book itself has been a great help in my job of porting about 100,00 lines of code from Visual Studio 6.0 to VS 2008.
Reviewed in the United States on December 31, 2003
This book contains a lot of useful information not only about debugging Windows and .NET applications, but also about real-life problems, scenarios and solutions. The author shares his stories that sometimes are very entertaining and useful.

Although this is exceptionally good book, I wish it had more content for the specifics of .NET debugging. I think another missing topic is `debugging mixed managed and unmanaged code'.
After reading most of the book, I disliked only one thing, which is author's strong opinion about using exceptions in the applications.
One person found this helpful
Report
Reviewed in the United States on September 24, 2003
I bought this book to get a complete knowledge of the .NET framework debugging and got nothing. May be the .NET in the title applies to the fact that the author is using the VS.NET. If you have got the author's previous book on debugging then there is no need to waste money on this one.
It discusses mainly C/C++ debugging in a typical MFC style (ASSERT/VERIFY etc).
Here is the content at a glance:
1. Bugs: Where they come From and How you Solve Them
2. Getting Started Debugging
3. Debugging During Coding
4. Operating System Debugging Support and How Win32 Debuggers Work
5. Advanced Debugger Usage with Visual Studio .NET
6. Advanced .NET Debugging with Visual Studio .NET
7. Advanced Native Code Techniques with Visual Studio .NET
8. Advanced Native Code Techniques with WinDGB
9. Extending the Visual Studio .NET IDE
10. Managed Exception Monitoring
11. Flow Tracing
12. Finding Source and Line Information with Just a Crash Address
13. Crash Handlers
14. Debugging Windows Services and DLLs That Load into Services
15. Multithreaded Deadlocks
16. Automated Testing
17. The Debug C Run-Time Library and Memory Management
18. FastTrace: A High-Performance Tracing Tool for Server Applications
19. Smoothing the Working Set
Appendixes.
As you can tell, there is hardly a .NET stuff to pay for, so for those of us owing the author's previous debugging book, this is just a second edition with .NET appended to confuse buyers!
42 people found this helpful
Report
Reviewed in the United States on January 7, 2005
This book brings a vast amount of Windows-specific debugging information together in one place and has been very helpful to me. Some of this info could be found elsewhere, but only by sorting through dozens of documentation pages and magazine articles, some many years old, and additionally the author adds value by giving very explicit instructions (even providing source code) on how to do things that are often only hinted at in the Microsoft documentation.

Most useful to me were the symbol-server tips, the SuperAssert macro and seeing how it does it what it does, crash handling in general, and the author's insight into why certain things are so slow (like OutputDebugString).

This book does have a not-so-subtle anti-C++ bias, there are little digs at C++ coding techniques throughout the book, which seem a little antiquated and inappropriate in 2005.

In the chapter on the debug C-runtime, I'm really surprised the author does not suggest writing a leak-detection system that captures the callstack at the time of allocation, I've found the C-runtime's file-and-line-oriented leak report fairly useless since the allocation is often deep inside some container class, you really need to know what code caused the allocation, not what code actually did the allocation. And the recommended feature that walks the entire heap every N allocations is unusable (it's too slow) in a large C++ program which might have many thousands of allocations. Also, redefining C++ keywords as suggested seems so evil, there are better ways of doing this.

I believe Windows XP Service Pack 2 changed some Windows internals that affect crash handling/debugging/stack walking, I wouldn't mind seeing an updated volume that covers these changes in detail.

Overall though, an excellent book, the most useful debugging book I've found so far.
6 people found this helpful
Report
Reviewed in the United States on April 13, 2003
Being John Robbin's greatest fan, I have been monitoring the release of this book right after it appeared on amazon. Once It hit the market for real, I got a copy via express delivery and I have to say it's worth the wait. I haven't actually read the whole think yet but its very impressive so far.
John walks the reader through debugging without tears. This edition of the book does contain a lot more information and is very current (a little too current cos all the binaries were built with VS .NET 2003 which is not in the market at this time.
However, this didn't hinder me since I have a copy of the RC. The first part of the book covers coding practices that will reduce the need to debug in the first place. The other parts of the book go into the dirty details of going after bugs with full confidence. From native win32 to managed code to multithreading; its all here.
If you're tired of scratching your head even when you have a debugger in front of you, stop reading my review and get yourself a copy of this book right away.
22 people found this helpful
Report