Description
This book introduces C++ programmers to DCOM and gives them the basic tools they need to write secure, maintainable programs. It clearly describes the C++ code needed to create distributed components and the communications exchanged between systems and objects, providing background, a guide to Visual C++ development tools and wizards, and insight for performance tuning, debugging, and understanding what the system is doing with your code.
Full Description
DCOM -- the Distributed Component Object Model -- is a recent upgrade of a time-honored and well-tested technology promoted by Microsoft for distributed object programming. Now that components are playing a larger and larger part in Windows 98, Windows NT 4.0, and Windows 2000, every Windows programmer will want to understand the technology. DCOM competes with CORBA as a rich and robust method for creating expandable and flexible components, allowing you to plug in new parts conveniently and upgrade without the need for code changes to every program that uses your component.
This book introduces C++ programmers to DCOM and gives them the basic tools they need to write secure, maintainable programs. While using Visual C++ development tools and wizards where appropriate, the author never leaves the results up to magic. The C++ code used to create distributed components and the communications exchanged between systems and objects are described at a level where the reader understands their significance and can use the insights for such tasks as debugging and improving performance.
The first few chapters explain both the remote procedure calls that underlie DCOM's communication and the way DCOM uses C++ classes. Readers become firmly grounded in the relation between components, classes, and objects, the ways objects are created and destroyed, how clients find servers, and the basics of security and threading.
After giving you a grounding in how DCOM works, this book introduces you to the Microsoft tools that make it all easy. By showing what really happens each time you choose a button in a wizard,
Learning DCOM makes it possible for you to choose what you need.
This book is for anyone who wants to understand DCOM. While thoroughly practical in its goals, it doesn't stint on the background you need to make your programs safe, efficient, and easy to maintain.
Topics include:
- MIDL (Microsoft Interface Definition Language, the language for defining COM interfaces)
- COM error and exception handling
- Custom, dispatch, and dual interfaces
- Standard and custom factories
- Management of in-process versus out-of-process servers
- Distributed memory management
- Pragmatic explanation of the DCOM wire protocol
- Standard, custom, handler, and automation marshaling
- Multithreading and apartments
- Security at the system configuration and programming level
- Active Template Library (ATL), ATL wizards -- and what they don't do
- Writing a component that can be invoked from Visual Basic
- Techniques for using distributed components
- Creating an ActiveX control and embedding it in a Web client
- Authentication and the use of Windows NT security features
- Techniques for merging marshaling code
- Connection and distributed events management
- An introduction to COM+ features
Colophon
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The animals on the cover of Learning DCOM are dachshunds. Dachshunds are easily identified by their long bodies, short legs, and long, hanging ears. Dachshund coats can be shorthaired, longhaired, or wirehaired. The American Kennel Club recognizes two sizes of dachshund: miniature (those weighing less than 10 pounds) and standard (those weighing 11 to 25 pounds). In Europe three sizes of dachshund, determined by chest circumference when the dogs are 15 months old, are recognized. The sizes are: standard (chest circumference of more than 35 cm), dwarf (30-35 cm), and miniature (less than 30 cm). The word "dachshund" means "badger dog" in German, and this peculiarly shaped dog was first bred in Germany to hunt badgers and other burrowing animals. They are fearless and independent dogs who can follow a badger into its burrow, put up a fierce fight, and retrieve the badger. Their independence is an important trait for badger hunting, as dachshunds need to be able to decide what to do without guidance from their masters when they are deep inside a badger hole. This same independence, however, can make them difficult dogs to train. Despite this, they are extremely loyal to their owners, and as of 1996 the AKC listed them as the sixth most popular dog. Jeffrey Liggett was the production editor for Learning DCOM. Sheryl Avruch was the production manager. Robert Romano and Rhon Porter created the illustrations using Adobe Photoshop 5.0 and Macromedia Freehand 8.0. Mike Sierra provided FrameMaker technical support. Editorial and production services were provided by Rashelle Perez and David Leiser at Electro-Publishing. Becky Peveler was the copyeditor. Edie Freedman designed the cover of this book, using a 19th-century engraving from the Dover Pictorial Archive. The cover layout was produced with Quark XPress 3.32 using the ITC Garamond font. Whenever possible, our books use RepKover, a durable and flexible lay-flat binding. If the page count exceeds RepKover's limit, perfect binding is used. The inside layout was designed by Nancy Priest and implemented in FrameMaker 5.5 by Mike Sierra. The text and heading fonts are ITC Garamond Light and Garamond Book. This colophon was written by Clairemarie Fisher O'Leary.