Skip to Content
Learning DCOM
book

Learning DCOM

by Thuan L. Thai
April 1999
Intermediate to advanced
502 pages
15h 5m
English
O'Reilly Media, Inc.
Content preview from Learning DCOM

Class Factories

So far, you’ve learned how to specify your interfaces and learned how to implement a COM object that supports a couple of interfaces. You’ve got an object, but how do you bring it to life? Technically, you can create and use your COM object as a normal C++ object. However, the goal is to expose this object to the world so that everyone, who has the correct permissions, can use the services exposed by our object.

As is, your COM object cannot be used in a distributed environment. For example, how will a remote client create a new object, using C++’s operator new, on a machine that is 200 miles away? They can’t, so remote clients can’t use your COM object just yet. You need a class factory: a COM object whose sole purpose in life is to manufacture COM objects of a specific COM class. Like interfaces, a COM class has an associated class identifier (CLSID). The CLSID is in fact a GUID, and therefore, it is a globally unique name of a class, which universally prevents name collisions. Figure 3-12 shows a class factory and its manufactured COM objects, which are instances of a COM class known to the class factory (this will be clear in Chapter 4).

A class factory and its manufactured COM objects

Figure 3-12. A class factory and its manufactured COM objects

A class factory is a vital element in a distributed environment, because it adds another level of indirection that allows COM to arbitrate and coordinate dynamic and remote ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

.NET and COM: The Complete Interoperability Guide

.NET and COM: The Complete Interoperability Guide

Adam Nathan
Windows 7 Device Driver

Windows 7 Device Driver

Ph.D. Ronald D. Reeves

Publisher Resources

ISBN: 9781449307011Supplemental ContentErrata Page