Programming Microsoft Visual C++

( 3 )


Microsoft Visual C++ 6.0 is the latest version of the industry-standard programming language for professionals. And "Programming Visual C++, Fifth Edition", is the newest edition of the book that's become the industry-standard text. Newly expanded and updated, it offers the same detailed, comprehensive coverage that's consistently made this title the best overall explanation of the capabilities of this powerful, complex development tool. "Programming Visual C++, Fifth Edition", delivers authoritative guidance on:...

See more details below
Available through our Marketplace sellers.
Other sellers (Paperback)
  • All (34) from $1.99   
  • New (2) from $39.00   
  • Used (32) from $1.99   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any coupons and promotions
Seller since 2014

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

New New. Unused. Good condition. Black reminder marker at the bottom. Minor shelf wear.

Ships from: Scarborough, Canada

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Seller since 2015

Feedback rating:


Condition: New
Brand new.

Ships from: acton, MA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Page 1 of 1
Showing All
Sort by
Sending request ...


Microsoft Visual C++ 6.0 is the latest version of the industry-standard programming language for professionals. And "Programming Visual C++, Fifth Edition", is the newest edition of the book that's become the industry-standard text. Newly expanded and updated, it offers the same detailed, comprehensive coverage that's consistently made this title the best overall explanation of the capabilities of this powerful, complex development tool. "Programming Visual C++, Fifth Edition", delivers authoritative guidance on: Fundamentals GDI, event handling, dialog boxes, memory management, SDI and MDI, printing, and help.

Advanced topics: multithreading, DIBs, ODBC, and DLLs COM creating document objects, ActiveX Controls, and components; automation; and using wizards and compiler extensions that support COM C++ programming for the Internet Windows Sockets, MFC WinInet, and ISAPI extension programs for Microsoft Internet Information Server.

An enclosed CD-ROM contains valuable sample source code and sample applications developed for the book-all of which makes this volume an indispensable tool that every professional will keep close at hand.

Building on the solid achievements of its predecessors, the latest edition provides important new coverage, including:

An overview of control development with ATL

A full discussion of the latest database programming enhancements

A valuable explanation of recent COM improvements

A comprehensive examination of Microsoft Internet Explorer 4.0 controls.

With detailed coverage for programmers, this trusted, definitive reference (previously published as Inside Visual C++) has been updated and expanded for C++ 6.0. If you are not familiar with Microsoft's powerful Visual C++ 6 IDE, then we encourage you to start with Beginning Visual C++ 6, a rather massive 1100-page guide and excellent tutorial. You should also be familiar with C++ and Microsoft's technologies such as COM/DCOM and the Active Template Library (ATL).

Read More Show Less

Editorial Reviews

New edition of a text that explains the capabilities of this complex and powerful programming tool. Topics include control development with ATL; the latest database programming enhancements; recent COM improvements; using Internet Explorer; Visual C++ and MFC for Windows CE; fundamentals (event handling, GDI, dialog boxes, memory management, SDI and MDI, printing, and help); advanced topics (DIBs, ODBC, and DLLs); ActiveX; and C++ programming for the internet. Includes a CD-ROM with sample source code and sample applications. Annotation c. by Book News, Inc., Portland, Or.
Read More Show Less

Product Details

  • ISBN-13: 9781572318571
  • Publisher: Microsoft Press
  • Publication date: 7/15/1998
  • Series: Microsoft Programming Series
  • Edition description: 5th ed.
  • Edition number: 5
  • Pages: 1150
  • Product dimensions: 7.39 (w) x 9.23 (h) x 1.99 (d)

Meet the Author

George Shepherd is an expert on the Microsoft .NET Framework and develops some of the industry's leading third-party .NET-based tools. He is the coauthor of several popular programming books, an instructor for DevelopMentor, a speaker at industry conferences, and has served as a contributing editor for MSDNĀ® Magazine. He's been programming with Windows since version 2.0, in the 1980s.

Read More Show Less

Read an Excerpt

The Transmission Control Protocol

You've learned about the limitations of UDP. What you really need is a protocol that supports error-free transmission of large blocks of data. Obviously, you want the receiving program to be able to reassemble the bytes in the exact sequence in which they are transmitted, even though the individual datagrams might arrive in the wrong sequence. TCP is that protocol, and it's the principal transport protocol for all Internet applications, including HTTP and File Transfer Protocol (FTP). Figure 34-6 shows the layout of a TCP segment. (It's not called a datagram.) The TCP segment fits inside an IP datagram, as shown in Figure 34-7.

The TCP protocol establishes a full-duplex, point-to-point connection between two computers, and a program at each end of this connection uses its own port. The combination of an IP address and a port number is called a socket. The connection is first established with a three-way handshake. The initiating program sends a segment with the SYN flag set, the responding program sends a segment with both the SYN and ACK flags set, and then the initiating program sends a segment with the ACK flag set.

After the connection is established, each program can send a stream of bytes to the other program. TCP uses the sequence number fields together with ACK flags to control this flow of bytes. The sending program doesn't wait for each segment to be acknowledged but instead sends a number of segments together and then waits for the first acknowledgment. If the receiving program has data to send back to the sending program, it can piggyback its acknowledgment and outbound data together in the same segments.

The sending program's sequence numbers are not segment indexes but rather indexes into the byte stream. The receiving program sends back the sequence numbers (in the acknowledgment number field) to the sending program, thereby ensuring that all bytes are received and assembled in sequence. The sending program resends unacknowledged segments.

Each program closes its end of the TCP connection by sending a segment with the FIN flag set, which must be acknowledged by the program on the other end. A program can no longer receive bytes on a connection that has been closed by the program on the other end.

Don't worry about the complexity of the TCP protocol. The Winsock and WinInet APIs hide most of the details, so you don't have to worry about ACK flags and sequence numbers. Your program calls a function to transmit a block of data, and Windows takes care of splitting the block into segments and stuffing them inside IP datagrams. Windows also takes care of delivering the bytes on the receiving end, but that gets tricky, as you'll see later in this chapter.

The Domain Name System

When you surf the Web, you don't use IP addresses. Instead, you use human-friendly names like or A significant portion of Internet resources is consumed when host names (such as are translated into IP addresses that TCP/IP can use. A distributed network of name server (domain server) computers performs this translation by processing DNS queries. The entire Internet namespace is organized into domains, starting with an unnamed root domain. Under the root is a series of top-level domains such as com, edu, gov, and org.

Servers and Domain Names
Let's look at the server end first. Suppose a company named SlowSoft has two host computers connected to the Internet, one for World Wide Web (WWW) service and the other for FTP service. By convention, these host computers are named and, respectively, and both are members of the second-level domain slowsoft, which SlowSoft has registered with an organization called InterNIC. (See

Now SlowSoft must designate two (or more) host computers as its name servers. The name servers for the com domain each have a database entry for the slowsoft domain, and that entry contains the names and IP addresses of SlowSoft's two name servers. Each of the two slowsoft name servers has database entries for both of SlowSoft's host computers. These servers might also have database entries for hosts in other domains, and they might have entries for name servers in third-level domains. Thus, if a name server can't provide a host's IP address directly, it can redirect the query to a lower-level name server. Figure 34-8 illustrates SlowSoft's domain configuration.

Clients and Domain Names
Now for the client side. A user types in the browser. (The http:// prefix tells the browser to use the HTTP protocol when it eventually finds the host computer.) The browser must then resolve into an IP address, so it uses TCP/IP to send a DNS query to the default gateway into an IP address for which TCP/IP is configured. This default gateway address identifies a local name server, which might have the needed host IP address in its cache. If not, the local name server relays the DNS query up to one of the root name servers. The root server looks up slowsoft in its database and sends the query back down to one of SlowSoft's designated name servers. In the process, the IP address for will be cached for later use if it was not cached already. If you want to go the other way, name servers are also capable of converting an IP address to a name....

Read More Show Less

Table of Contents

Pt. I Windows, Visual C++, and Application Framework Fundamentals
Ch. 1 Microsoft Windows and Visual C++ 3
Ch. 2 The Microsoft Foundation Class Library Application Framework 17
Pt. II The MFC Library View Class
Ch. 3 Getting Started with AppWizard - "Hello, world!" 31
Ch. 4 Basic Event Handling, Mapping Modes, and a Scrolling View 47
Ch. 5 The Graphics Device Interface, Colors, and Fonts 75
Ch. 6 The Modal Dialog and Windows Common Controls 103
Ch. 7 The Modeless Dialog and Windows Common Dialogs 147
Ch. 8 Using ActiveX Controls 165
Ch. 9 Internet Explorer 4 Common Controls 195
Ch. 10 Win32 Memory Management 217
Ch. 11 Bitmaps 231
Ch. 12 Windows Message Processing and Multithreaded Programming 267
Pt. III The Document-View Architecture
Ch. 13 Menus, Keyboard Accelerators, the Rich Edit Control, and Property Sheets 287
Ch. 14 Toolbars and Status Bars 323
Ch. 15 A Reusable Frame Window Base Class 349
Ch. 16 Separating the Document from Its View 367
Ch. 17 Reading and Writing Documents - SDI Applications 413
Ch. 18 Reading and Writing Documents - MDI Applications 445
Ch. 19 Printing and Print Preview 469
Ch. 20 Splitter Windows and Multiple Views 491
Ch. 21 Context-Sensitive Help 505
Ch. 22 Dynamic Link Libraries 527
Ch. 23 MFC Programs Without Document or View Classes 557
Pt. IV Active X: Com, Automation, and Ole
Ch. 24 The Component Object Model 569
Ch. 25 Automation 613
Ch. 26 Uniform Data Transfer - Clipboard Transfer and OLE Drag and Drop 687
Ch. 27 Structured Storage 717
Ch. 28 OLE Embedded Components and Containers 745
Ch. 29 Introducing the Active Template Library 799
Ch. 30 ATL and ActiveX Controls 849
Pt. V Database Management
Ch. 31 Database Management with Microsoft ODBC 897
Ch. 32 Database Management with Microsoft Data Access Objects 929
Ch. 33 The OLE DB Templates 955
Pt. VI Programming for the Internet
Ch. 34 TCP/IP, Winsock, and WinInet 985
Ch. 35 Programming the Microsoft Internet Information Server 1029
Ch. 36 ActiveX Document Servers and the Internet 1055
Ch. 37 Introducing Dynamic HTML 1075
Ch. 38 Visual C++ for Windows CE 1091
App. A Message Map Functions in the Microsoft Foundation Class Library 1111
App. B MFC Library Runtime Class Identification and Dynamic Object Creation 1119
Index 1125
Read More Show Less

Customer Reviews

Average Rating 3.5
( 3 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 3 Customer Reviews
  • Anonymous

    Posted May 14, 2002

    Difficult book to comprehend

    This is a terrible book and is definately not for beginners. I bought another book after buying this book to understand Visual C++ and went back to this book and still didn't understand it. It covers a lot of material but does a terrible job in explaining it. Don't waste your money, go with Sybex's Master Visual c++.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted December 21, 2000

    It's not for beginners

    It's a good reference book, but not for beginners as a text book. This book is the latest edition of Inside Visual C++ series. This book covers MS Visual C++ 6.0 while Inside Visual C++ (ed 4) only covers 5.0.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted November 2, 2000

    It's a good book

    I think it's useful and I recommend it. << Inside visual c++>> is a good book too.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 3 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)