Microsoft Visual C++ has always been one of the most comprehensive and sophisticated software development environments available. It has consistently provided a high level of programming power and convenience, while offering a diverse set of tools designed to suit almost every programming style. And Visual C++ version 6 adds significantly to the already impressive array of features. New features include easier application coding, building, and debugging; greater support for ActiveX and Internet technologies; additional database development options; and new application architectures and user-interface elements, such as Microsoft Internet Explorer 4 style controls.
Learning to use Visual C++, however, can be a daunting task. The purpose of this book is to provide you with a single, comprehensive, step-by-step guide to Visual C++. It’s designed to be read through from the beginning and to give you a broad general understanding of the product, enabling you to choose the specific tools you need for particular programming tasks and allowing you to find all the information you need to use these tools. The book, however, provides much more than an overview or introduction. The detailed discussions and the tutorial exercises are designed to give you a solid understanding of the key programming tools and techniques, as well as to supply you with the tools and techniques that will help you become proficient in developing your programs.
How, you might ask, can a single book serve as a comprehensive guide to such an enormous product? Mastering Visual C++ 6 does this in two ways. First, it focuses on the newer software technologies (for example, C++, Windows’ graphical interface programming, the Microsoft Foundation Classes, and the Wizard code generators), assuming that you have some knowledge of the older technologies (such as C, procedural character-mode programming, and the standard C runtime libraries). Second, the book contains many "pointers" to the comprehensive online documentation provided with Visual C++. Rather than attempting to discuss every detail of every feature—for example, every parameter passed to every function in a particular group—the book provides an in-depth discussion of the key features and then points you to the exact location in the documentation where you can find additional details.
An Overview of the Book
Part I of the book (Chapters 1 and 2) explains how to install and set up both Visual C++ and the companion CD included with this book, and it provides a general description of the components of the Visual C++ product. Part I also introduces you to the basic techniques required to write and build programs using the Visual C++ integrated development environment, the Developer Studio. You'll learn just enough about the Developer Studio to be able to write and test simple example programs as you work through Part II.
Part II (Chapters 3 through 8) offers an introduction to the C++ programming language. These chapters are designed to help you make the transition from C to C++ programming, and they focus on the C++ features used by the Microsoft Foundation Classes. You'll learn just enough C++ programming to be able to understand the C++ techniques given in the coverage of the Microsoft Foundation Classes in Part III.
Part III (Chapters 9 through 25) forms the heart of the book. It explains how to write programs for the graphical user interface of Microsoft Windows 95 or later or Windows NT. (If you have the RISC edition of Visual C++, you can use these techniques to develop for Windows NT on PowerPC, Alpha, or MIPS systems, as well as Intel systems. If you have the Macintosh cross-development edition of Visual C++, you can also develop for the Macintosh or Power Macintosh.) Part III shows you how to use the Developer Studio and the most advanced development tools that it provides, such as the Microsoft Foundation Classes, the Wizard code-generating tools, and the resource editors. Chiefly because of the comparative simplicity of programming with these tools, Part III is able to cover not only the basics of Windows programming, but also many relatively advanced topics, such as implementing split window views, displaying status bars and docking toolbars, writing MDI (multiple document interface) applications, using drawing functions and bitmaps, print previewing, running multiple threads of execution, exchanging data with OLE (object linking and embedding), and creating and using ActiveX controls.
The Companion CD
The compact disc accompanying this book includes all the source files you need to build the example programs in this book, plus the executable files for these programs so that you can run them immediately. Chapter 1 describes the contents of this companion CD and explains how to install and use it.
What Is Required
The book doesn't require knowledge of either the C++ language or Windows’ graphical interface programming. The book assumes, however, that you have a basic knowledge of the C language. C++ concepts are frequently explained in terms of—or are contrasted with—C language concepts. If you need to learn or review C, you might consult one of the following books, which are among the many good C programming titles: The C Programming Language by Kernighan and Ritchie (Prentice-Hall), and C: A Reference Manual by Harbison and Steele (Prentice-Hall).



