Debugging Windows Programs


Book Description

For professional software developers, debugging is a way of life. This book is the definitive guide to Windows debugging, providing developers with the strategies and techniques they need to fulfill one of their most important responsibilities efficiently and effectively. Debugging Windows Programs shows readers how to prevent bugs by taking full advantage of the Visual C++ development tools and writing code in a way that makes certain types of bugs impossible. They also will learn how to reveal bugs with debugging statements that force bugs to expose themselves when the program is executed, and how to make the most of debugging tools and features available in Windows, Visual C++, MFC, and ATL. The authors provide specific solutions to the most common debugging problems, including memory corruption, resource leaks, stack problems, release build problems, finding crash locations, and multithreading problems. These essential topics are covered: The debugging process Writing C++ code for debugging Strategically using assertions, trace statements, and exceptions Windows postmortem debugging using Dr. Watson and MAP files Using the Visual C++ debugger Debugging memory Debugging multithreaded programs Debugging COM Each chapter provides developers with exactly what they need to master the subject and improve development productivity and software quality. Comprehensive, current, and practical, Debugging Windows Programs helps developers understand the debugging process and make the most of the Visual C++ debugging tools. 020170238XB04062001




Debugging Microsoft .NET 2.0 Applications


Book Description

Get the essential, straightforward information you need—and master the core topics for debugging applications with Microsoft Visual Studio 2005. Debugging expert John Robbins offers practical answers to real-world development questions, including code samples in Microsoft Visual C# and Visual Basic. You’ll learn the debugging techniques and tools to debug more efficiently and help ensure top-quality code. Discover how to: Arm yourself with tools and techniques that contribute to long-term success in the debugging battlefield Implement John’s practical debugging process to sniff out bugs—including “freak” bugs Catch bugs during development with assertions, tracers, and comments Set advanced breakpoints in your debugger to specify exact trigger conditions Use the Watch window, Data Tips, and Visualizers to see key data quickly Employ other debugging tools, such as WinDBG, SOS, and ADPlus Write macros and add-ins to extend the Visual Studio integrated development environment Debug with Code Analysis—and learn to write your own rules PLUS—Get code samples on the Web




Advanced Windows Debugging


Book Description

The First In-Depth, Real-World, Insider’s Guide to Powerful Windows Debugging For Windows developers, few tasks are more challenging than debugging–-or more crucial. Reliable and realistic information about Windows debugging has always been scarce. Now, with over 15 years of experience two of Microsoft’s system-level developers present a thorough and practical guide to Windows debugging ever written. Mario Hewardt and Daniel Pravat cover debugging throughout the entire application lifecycle and show how to make the most of the tools currently available–-including Microsoft’s powerful native debuggers and third-party solutions. To help you find real solutions fast, this book is organized around real-world debugging scenarios. Hewardt and Pravat use detailed code examples to illuminate the complex debugging challenges professional developers actually face. From core Windows operating system concepts to security, Windows® VistaTM and 64-bit debugging, they address emerging topics head-on–and nothing is ever oversimplified or glossed over!




Visual Studio 2019 Tricks and Techniques


Book Description

Harness the full power of the Visual Studio IDE to take your coding skills to the next level by learning about IDE productivity practices and exclusive techniques Key FeaturesIncrease your productivity by leveraging Visual Studio 2019's improvements and featuresExplore powerful editing, code intelligence, and source code control features to increase productivityDelve into VS’s powerful, untapped features such as custom project templates and extensionsBook Description Visual Studio 2019 (VS 2019) and Visual Studio Code (VS Code) are powerful professional development tools that help you to develop applications for any platform with ease. Whether you want to create web, mobile, or desktop applications, Microsoft Visual Studio is your one-stop solution. This book demonstrates some of the most sophisticated capabilities of the tooling and shows you how to use the integrated development environment (IDE) more efficiently to be more productive. You’ll begin by gradually building on concepts, starting with the basics. The introductory chapters cover shortcuts, snippets, and numerous optimization tricks, along with debugging techniques, source control integration, and other important IDE features that will help you make your time more productive. With that groundwork in place, more advanced concepts such as the inner workings of project and item templates are covered. You will also learn how to write quality, secure code more efficiently as well as discover how certain Visual Studio features work 'under the hood'. By the end of this Visual Studio book, you’ll have learned how to write more secure code faster than ever using your knowledge of the extensions and processes that make developing successful solutions more enjoyable and repeatable. What you will learnUnderstand the similarities and differences between VS 2019 and VS CodeGet to grips with numerous keyboard shortcuts to improve efficiencyDiscover IDE tips and tricks that make it easier to write codeExperiment with code snippets that make it easier to write repeating code patternsFind out how to customize project and item templates with the help of hands-on exercisesUse Visual Studio extensions for ease and improved productivityDelve into Visual Studio’s behind the scene operationsWho this book is for This book is for C# and .NET developers who want to become more efficient and take advantage of features they may not be aware of in the IDE. Those looking to increase their productivity and write quality code more quickly by fully utilizing the power of the Visual Studio IDE will also find this book useful.




Debugging Applications for Microsoft .NET and Microsoft Windows


Book Description

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 [email protected].




The Old New Thing


Book Description

"Raymond Chen is the original raconteur of Windows." --Scott Hanselman, ComputerZen.com "Raymond has been at Microsoft for many years and has seen many nuances of Windows that others could only ever hope to get a glimpse of. With this book, Raymond shares his knowledge, experience, and anecdotal stories, allowing all of us to get a better understanding of the operating system that affects millions of people every day. This book has something for everyone, is a casual read, and I highly recommend it!" --Jeffrey Richter, Author/Consultant, Cofounder of Wintellect "Very interesting read. Raymond tells the inside story of why Windows is the way it is." --Eric Gunnerson, Program Manager, Microsoft Corporation "Absolutely essential reading for understanding the history of Windows, its intricacies and quirks, and why they came about." --Matt Pietrek, MSDN Magazine's Under the Hood Columnist "Raymond Chen has become something of a legend in the software industry, and in this book you'll discover why. From his high-level reminiscences on the design of the Windows Start button to his low-level discussions of GlobalAlloc that only your inner-geek could love, The Old New Thing is a captivating collection of anecdotes that will help you to truly appreciate the difficulty inherent in designing and writing quality software." --Stephen Toub, Technical Editor, MSDN Magazine Why does Windows work the way it does? Why is Shut Down on the Start menu? (And why is there a Start button, anyway?) How can I tap into the dialog loop? Why does the GetWindowText function behave so strangely? Why are registry files called "hives"? Many of Windows' quirks have perfectly logical explanations, rooted in history. Understand them, and you'll be more productive and a lot less frustrated. Raymond Chen--who's spent more than a decade on Microsoft's Windows development team--reveals the "hidden Windows" you need to know. Chen's engaging style, deep insight, and thoughtful humor have made him one of the world's premier technology bloggers. Here he brings together behind-the-scenes explanations, invaluable technical advice, and illuminating anecdotes that bring Windows to life--and help you make the most of it. A few of the things you'll find inside: What vending machines can teach you about effective user interfaces A deeper understanding of window and dialog management Why performance optimization can be so counterintuitive A peek at the underbelly of COM objects and the Visual C++ compiler Key details about backwards compatibility--what Windows does and why Windows program security holes most developers don't know about How to make your program a better Windows citizen




Inside Windows Debugging


Book Description

Use Windows debuggers throughout the development cycle—and build better software Rethink your use of Windows debugging and tracing tools—and learn how to make them a key part of test-driven software development. Led by a member of the Windows Fundamentals Team at Microsoft, you’ll apply expert debugging and tracing techniques—and sharpen your C++ and C# code analysis skills—through practical examples and common scenarios. Learn why experienced developers use debuggers in every step of the development process, and not just when bugs appear. Discover how to: Go behind the scenes to examine how powerful Windows debuggers work Catch bugs early in the development cycle with static and runtime analysis tools Gain practical strategies to tackle the most common code defects Apply expert tricks to handle user-mode and kernel-mode debugging tasks Implement postmortem techniques such as JIT and dump debugging Debug the concurrency and security aspects of your software Use debuggers to analyze interactions between your code and the operating system Analyze software behavior with Xperf and the Event Tracing for Windows (ETW) framework




Debugging C++


Book Description

This troubleshooting reference for the C++ programmer is filled with solutions to common and rare bugs. It helps developers identify bad coding habits and build clean code.




Introduction to Windows and Graphics Programming with Visual C++.NET


Book Description

This book provides an accessible approach to the study of Windows programming with Visual C++. It is intended to be an introduction to Visual C++ for technical people including practicing engineers, engineering students, and others who would like to understand Windows programming and use its inherent graphic capabilities. While the book is aimed at a technical audience, the mathematical content is modest and it should be readable by most people interested in C++ programming. It introduces readers to Windows programming in a natural way, making use of the object-oriented environment, the Microsoft Foundation Classes (MFC), and the document/view organization.Over fifty example projects are included on a companion CD. These example projects are used in the book's tutorial format initially by introducing Visual C++ programming and important C++ concepts. Then coverage of Windows programming begins with fundamental graphics operations including interactive drawing with mouse inputs. This is followed by program interaction through Windows tools for creating drop down menus, toolbar buttons, dialog windows, file input/output, output to printers, etc. Basic animation concepts are presented, using classes to develop, manipulate and display geometric shapes. Graphs are plotted as objects and the process of creating color contour plots is discussed.After using this book and following its collection of example programs, readers should be well prepared to write interactive programs which integrate Windows functionality and graphics with their own C++ programming. The step-by-step structure of each example in the book is described thoroughly and only standard Microsoft resources for graphics are required. Exercises at the end of each chapter provide opportunities to revisit and extend the tutorial examples. The project folders on the CD include complete program code for all examples. Files are also provided that contain classes and functions for handling geometric objects and graphs and which may be easily adapted for a wide variety of application programs.




Mastering Visual Studio 2017


Book Description

A guide to mastering Visual Studio 2017 About This Book Focus on coding with the new, improved, and powerful tools of VS 2017 Master improved debugging and unit testing support capabilities Accelerate cloud development with the built-in Azure tools Who This Book Is For .NET Developers who would like to master the new features of VS 2017, and would like to delve into newer areas such as cloud computing, would benefit from this book. Basic knowledge of previous versions of Visual Studio is assumed. What You Will Learn Learn what's new in the Visual Studio 2017 IDE, C# 7.0, and how it will help developers to improve their productivity Learn the workloads and components of the new installation wizard and how to use the online and offline installer Build stunning Windows apps using Windows Presentation Foundation (WPF) and Universal Windows Platform (UWP) tools Get familiar with .NET Core and learn how to build apps targeting this new framework Explore everything about NuGet packages Debug and test your applications using Visual Studio 2017 Accelerate cloud development with Microsoft Azure Integrate Visual Studio with most popular source control repositories, such as TFS and GitHub In Detail Visual Studio 2017 is the all-new IDE released by Microsoft for developers, targeting Microsoft and other platforms to build stunning Windows and web apps. Learning how to effectively use this technology can enhance your productivity while simplifying your most common tasks, allowing you more time to focus on your project. With this book, you will learn not only what VS2017 offers, but also what it takes to put it to work for your projects. Visual Studio 2017 is packed with improvements that increase productivity, and this book will get you started with the new features introduced in Visual Studio 2017 IDE and C# 7.0. Next, you will learn to use XAML tools to build classic WPF apps, and UWP tools to build apps targeting Windows 10. Later, you will learn about .NET Core and then explore NuGet, the package manager for the Microsoft development platform. Then, you will familiarize yourself with the debugging and live unit testing techniques that comes with the IDE. Finally, you'll adapt Microsoft's implementation of cloud computing with Azure, and the Visual Studio integration with Source Control repositories. Style and approach This comprehensive guide covers the advanced features of Visual Studio 2017, and communicates them through a practical approach to explore the underlying concepts of how, when, and why to use it.