The Essence of COM

The Essence of COM : A Programmer's Workbook

By (author) 

List price: US$53.50

Currently unavailable

Add to wishlist

AbeBooks may have this title (opens in new window).

Try AbeBooks


show more

Product details

  • Mixed media product | 352 pages
  • 209.6 x 276.4 x 25.4mm | 957.09g
  • Prentice Hall
  • Upper Saddle River, United States
  • English
  • 3rd edition
  • w. figs.
  • 0130165816
  • 9780130165817

Table of contents

1. Introduction: Using Objects.

A. Concepts and Definitions. B. Component-Object Model. C. IUnknown Interface. D. GUIDs and UUIDs. E. HRESULTs. F. Using Our First COM Object. G. Writing Our First COM Object. Lab Exercises.

2. Object Servers.

A. Why Provide COM Objects? B. Object Creation from the Client's Perspective. C. Server Registration. D. The Class Factory. E. Server Lifetime. F. In-Proc and Out-of-Proc Servers. Lab Exercises.

3. Custom Interfaces.

A. VTBL Interfaces Versus Dispatch Interfaces. B. Abstract Definition of an Interface. C. Standard Marshaling Via Proxy and Stub. D. Standard Marshaling Via a Type Library. E. Dual Interfaces. F. Multiple Inheritance and Error Handling. Lab Exercises.

4. Automation.

A. Concepts and Definitions. B. Basic Client Functionality. C. Basic Server Functionality. Lab Exercises.

5. Type Libraries.

A. Concepts and Definitions. B. Building Type Libraries. C. Types of Objects Described in Type Libraries. D. Deploying and Registering Type Libraries. E. Reading Type Libraries. Lab Exercises.

6. Threads and COM.

A. Concepts and Definitions. B. Threading Apartments. C. Single-Threaded Apartment Example. D. Multi-Threaded Apartment Example. E. Inter-Apartment Object Marshaling. F. Threading and .EXE Servers. G. ThreadingModel = 'Both'. Lab Exercises.

7. Distributed COM (DCOM).

A. Concepts and Definitions. B. Creating Remote Objects. C. Launch Security. D. Remote Client Identity. E. Call Security and Authentication. F. Performance in DCOM. G. Cool but Cautionary Example: Global Running Object Table. Lab Exercises.

8. Persistent Objects.

A. Concepts and Definitions. B. Using Persistent Objects. C. Implementing Persistent Objects. Lab Exercises.

9. Monikers.

A. Concepts and Definitions. B. Types of Monikers. C. Creating a Moniker. D. Binding a Moniker. E. Writing Your Own Custom Moniker. F. Complex Binding Hierarchies. Lab Exercises.

10. Asynchronous COM.

A. Concepts and Definitions. B. Declaring Asynchronous Interfaces. C. Simplest Asynchronous Example. D. Callbacks for Completion. Lab Exercises.

11. COM Support in Visual C++.

A. Smart Pointers. B. Wrapper Classes Using Type Libraries for C++ Clients. C. BSTR Support. D. ANSI - Unicode Conversion. Lab Exercises.

12. Active Template Library. (ATL).

A. Concepts and Definitions. B. ATL Object Servers. C. ATL Objects. D ATL Object Methods and Properties. E. Internals of ATL Objects. F. Debugging ATL Objects. Lab Exercises.

13. COM Support in Visual Basic.

A. Concepts and Definitions. B. COM Client Support in VB. C. COM Server Support in VB. D. COM Error Handling in VB. E. COM Threading in VB. Lab Exercises.

14. COM Support in Visual Java.

A. Concepts and Definitions. B. Writing COM Clients in Java. C. Creating a COM Server in Java. D. COM Error Handling in Java. E. Using the COM API from Java. F. COM Threading in Java. Lab Exercises.

Appendix: Containment and Aggregation.

show more

About David S. Platt

DAVID S. PLATT is president of Rolling Thunder Computing, a leading consulting firm specializing in COM development. He is an instructor in Computer Science at Harvard University and also teaches COM and COM+ at public seminars and in-house at companies all over the world. He publishes ThunderClap, a quarterly newsletter on COM+ development, available free from his Web site. His column "ActiveXplained" appears bimonthly on Byte.Com.
show more