A guide to programming with Microsoft Foundation Classes and C++ in the Windows environment for readers with some previous experience in programming. Begins with the basics, and progresses to sophisticated databases, OLE, thread support, expanding dialogs, subclassed graphical lists, multi-document and multi-view MDI applications, DDX and DDV, splash screens, and other fancy features. The CD-ROM contains the entire book in Abode Acrobat plus all the source code. The latest edition reflects Windows 98 and NT 4, and will be updated on the accompanying web site. There is no bibliography. Annotation c. Book News, Inc., Portland, OR (booknews.com)
"synopsis" may belong to another edition of this title.
MARSHALL BRAIN is founder and principal of Interface Technologies, Inc., a nationally recognized software development and enterprise systems design and implementation firm specializing in Windows networking and software design. He is author of nine books, including Win32 System Services: The Heart of Windows 95 and Windows NT (Prentice Hall).
LANCE LOVETTE is a project team leader for application software design and implementation using MFC, and a Microsoft Certified Instructor. He is also the author of ITCLib, an MFC class hierarchy used by thousands of MFC developers to create reusable MFC code much more quickly.
The #1 MFC guide for every Windows programmer!
Practical techniques for industrial-strength code.
Incorporate today's latest, hottest user interface features.
Fully updated for Windows 98 and NT4 - with regular Web updates!
Code and searchable book on CD-ROM!
The #1 MFC guide, now updated for Windows 98, NT4, and the latest Visual C++!
Developing Professional Applications for Windows 98 and NT Using MFC is a huge, single-volume storehouse of practical information for Visual C++ and MFC developers at every skill level. Year after year, it's a best-seller, because no other book offers as much practical guidance and industrial-strength code. Now there's a new edition, fully updated to reflect Windows 98 and NT 4. Better yet, this book will stay up-to-date, thanks to a companion website that posts new information and sample code whenever Microsoft updates Visual C++!
You'll find precise, comprehensive coverage of everything MFC programmers should know, from the basics to sophisticated database, OLE, and thread support. Discover how to make the most of Microsoft's AppWizard and Class Wizard and learn how to incorporate sophisticated user interface features, such as expanding dialogs and subclassed graphical lists. Build multi-document and multi-view MDI applications; master DDX and DDV; create splash screens; and work with resource editors, canned dialogs, list and edit controls, debugging, utility classes, and much more.
The accompanying CD-ROM includes a complete, searchable copy of the book in Adobe Acrobat format, plus all the book's source code—then, look for updates on the Web whenever Microsoft updates MFC!
Getting Your Bearings
You are probably opening this book because you are new to Windows Programming or because you are new to MFC (Microsoft Foundation Classes) or the Visual C++ programming environment. For example, you might be an experienced UNIX or Macintosh programmer. Or perhaps you have a lot of talent with C programming and command-driven user interfaces on PCs and want to move over to Windows. You may be experienced with Windows programming in C, but have never before used MFC and C++ to develop Windows applications. Regardless of your origin, you will find that as you try to make your transition you are hampered by two problems. The purpose of this book is to quickly solve those problems so that you can begin creating your own professional applications with Visual C++ as quickly as possible.
The first problem is mental: you have to get past the wall that surrounds Visual C++. That wall arises because of the obvious complexity of the Windows and C++ programming environments. When you load Visual C++ from its CD, you notice that there are tens of thousands of pages of documentation, hundreds of sample programs, and untold megabytes of help files. No one has the time to sort through all of this material, but you know that hidden in those megabytes are hundreds of important concepts that you need to master.
The second problem is more pedestrian: you have to pick a place to start. But where should you begin? How do you write a simple Windows application? How do you learn how to write an advanced one?
This book is designed to help you move into the Visual C++ environment rapidly and confidently. The purpose of this chapter is to help you get your bearings in this new environment. It will introduce you to Visual C++ and then give you a starting point and a direction so that you can become an accomplished Windows programmer very quickly using the most modern tools and techniques available.
What is Visual C++?The Visual C++ environment is huge and can be extremely intimidating initially. Visual C++ combines a complete suite of powerful tools into a single application development environment, and the first time you face all of these tools it can be very difficult to discern what they all do or how to use them. When you look at the book reader application that comes with the Visual C++ CD-ROM, you face another hurdle: You find thousands and thousands of pages in many different books. The thought of wading through all of these manuals can be daunting.
So letUs start at the beginning and look at Visual C++ in an organized way. First of all, what is it? Here is a brief summary:
Visual C++ is a C++ compiler
Visual C++ is a debugging environment
Visual C++ is an application framework generator
Visual C++ is a project manager
Visual C++ is an easy way to design and implement menus, dialogs, and other "resources"
Visual C++ is a programmer acceleratorQseveral tools inside Visual C++ are designed to make you more efficient by making your life as a programmer easier or by reducing the code you must write
In other words, Visual C++ is a complete and extremely powerful application development environment. In order to take full advantage of this environment, you have to become comfortable with all the tools, and you have to know how they can work together to accelerate your software development cycle.
In its most basic form, Visual C++ is simply a C++ compiler. You can use it to create simple text programs in C or C++. If you would like to try this out, go to Appendix B.1 and work through the example there. You will find that it is extremely easy to write, compile, and debug simple text programs using Visual C++.
Most people who purchase Visual C++ do not want to create text programs, however. They want to create advanced Windows applications that make effective use of the Windows 98 and Windows NT user interface. To do this, you must know C++, and you must understand the MFC hierarchy. MFC is designed make you as productive as possible by encapsulating common Windows code in classes that are already written, tested, and debugged. Once you invest the time to learn MFC, you are greatly rewarded in increased speed, flexibility and robustness.
Part 1 of this book gives you a thorough introduction to MFC. It shows you the basic principles used in every MFC program you write. Part 2 gives a complete overview of all the controls and features that MFC offers. Part 2 contains hundreds of examples that make it easy to understand the different MFC classes.
Once you feel comfortable with MFC, you are ready to begin creating professional Windows applications. Part 3 introduces the AppWizard, the ClassWizard, and the resource editing tools of Visual C++. The AppWizard is your starting point when creating any full-blown Windows application: It helps you by generating a complete file framework that organizes the entire application around a consistent core of MFC classes. The ClassWizard, in combination with the resource editing features that the Visual C++ environment provides, then makes it easy to add to and complete your application by helping you design, create, and install menus, dialog boxes, and other application resources. The ClassWizard also helps you add the code that lets your application respond to user input properly. Using these three toolsQthe AppWizard, the ClassWizard, and the resource editorsQtogether with the MFC class hierarchy, it is extremely easy to complete professional applications very quickly. Part 3 contains four different example applications to help demonstrate the process.
Part 4 continues by demonstrating advanced features. It shows you how to use a variety of techniques to create such things as expanding dialogs, property sheets, dialog bars, splash screens, self-drawn controls and bitmapped backgrounds. These techniques add significant utility to your applications when used appropriately. Finally, Part 5 concludes the book by discussing advanced MFC classes for database connectivity, OLE features, and so on.
Available DocumentationThe Visual C++ CD-ROM contains over 100 megabytes of on-line documentation covering various aspects of Windows, MFC, and the tools available in Visual C++. It contains many more megabytes of sample code. The MFC class hierarchy contains hundreds of different classes holding thousands of member functions. The Win32 API contains thousands of functions as well. All of this material is documented in on-line help files. Obviously, there is no lack of documentation with this product.
This book, therefore, makes no attempt to replace the documentation. Its goal is to help you wind your way through the Visual C++ forest and find what you need. Using the base you gain from reading this book, you will be able to approach Visual C++ and begin using it in productive ways very quickly.
There are currently seven different types of documentation provided by Microsoft for Visual C++ and MFC:
On-line Books P A series of manuals on the CD-ROM that act as the documentation for the system. The collection of books is available from the Contents section of the Help menu. Look at the titles of all the different books and articles available. You will find that there are many. The books cover Visual Studio, the tools within Visual Studio like the compiler, debugger, etc., the many function libraries available, etc
Sample Code P The Visual C++ directory on your hard disk may contain a sample directory that contains source code demonstrating a wide variety of techniques. Some of the samples are written in C, while other samples use MFC and C++.
Developer Network CD P MicrosoftUs DeveloperUs Network CD provides quite a bit of additional sample code, along with books and files containing a variety of valuable information. You receive this CD when you become a member of the Microsoft DeveloperUs Network.
MicrosoftUs Web Site - the Microsoft Web site contains knowledge bases and articles that may be helpful.
Internet News Groups - Numerous newsgroups and mailing lists on the Internet bring C++/MFC developers together to share tips and techniques. There are also other web sites available full of sample code and tips.
Using all of these different forms of documentation, you can find anything you need to know. The key is understanding where and how to look for what you need. This book will help accelerate that process tremendously.
Road MapThe tools in Visual C++ require a great deal of prior knowledge if you want to use them effectively. For example, when you open the Visual C++ package and load the CD, you may have the impression that you can use the AppWizard to generate any program you like. Unfortunately, the code that the AppWizard generates is virtually worthless unless you know a good bit about MFC already. That is why this book is structured the way it is. The progression presented in this book is exactly the progression you will need to follow if you do not already know MFC. However, different people come into Visual C
"About this title" may belong to another edition of this title.
FREE shipping within U.S.A.
Destination, rates & speedsSeller: WeSavings LLC, MONTGOMERY, TX, U.S.A.
Paperback. Condition: Good. No Jacket. X-Library book. Standard wear to cover and typical library markings. Accessory materials may not be included. 100% Money Back Guarantee!!! Seller Inventory # JC-XWEP-NSK0
Quantity: 1 available
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 2.84. Seller Inventory # G0130851213I4N00
Quantity: 1 available
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Paperback. Condition: Good. No Jacket. Pages can have notes/highlighting. Spine may show signs of wear. ~ ThriftBooks: Read More, Spend Less 2.84. Seller Inventory # G0130851213I3N00
Quantity: 1 available
Seller: Romtrade Corp., STERLING HEIGHTS, MI, U.S.A.
Condition: New. This is a Brand-new US Edition. This Item may be shipped from US or any other country as we have multiple locations worldwide. Seller Inventory # ABNR-264573
Quantity: 1 available
Seller: Books Puddle, New York, NY, U.S.A.
Condition: Used. pp. 880 3rd Edition. Seller Inventory # 2650378271
Quantity: 1 available
Seller: Majestic Books, Hounslow, United Kingdom
Condition: Used. pp. 880. Seller Inventory # 58132928
Quantity: 1 available
Seller: Biblios, Frankfurt am main, HESSE, Germany
Condition: Used. pp. 880. Seller Inventory # 1850378261
Quantity: 1 available
Seller: Mispah books, Redhill, SURRE, United Kingdom
Paperback. Condition: Like New. Like New. book. Seller Inventory # ERICA79001308512136
Quantity: 1 available