This convenient workbook makes COM and ActiveX easy to
understand, and comfortable to use. This new edition has
been updated with 200 pages of new coverage, including
Visual C++ 6, Visual J++ 6, IDL, monikers, Windows 2000
threads, and more. The CD-ROM contains all sample code from
the book.
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. Index.