Plug-ins and Microsoft’s COM

The plug-in model is compatible with the basics of Microsoft’s COM (Component Object Model) architecture. This means that the plug-in interface is laid out according to the COM guidelines and that all interfaces must inherit from COM’s IUnknown interface. These are the only elements plug-ins share with COM. Other COM concepts such as the IClassFactory interface, aggregation, out-of-process servers, and Windows registry are not mapped. This document only minimally covers COM concepts as necessary to explain the way they are used in Core Foundation plug-ins. For additional information, you are encouraged to seek out the wealth of documentation already published about COM. A good place to start is the COM area of Microsoft’s web site, http://www.microsoft.com/com/tech/com.asp.