|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
A subset of MFC is designed to support COM, while most of the Active Template Library (ATL) is designed for COM programming. This section of topics describes MFC's support for COM.
Active technologies (such as ActiveX controls, Active document containment, OLE, and so on) use the Component Object Model (COM) to enable software components to interact with one another in a networked environment, regardless of the language with which they were created. Active technologies can be used to create applications that run on the desktop or the Internet. For more information see Introduction to COM or The Component Object Model.
Active technologies include both client and server technologies, including the following:
Active document containment, supported in MFC versions 4.2 and later, allows users to view active documents (such as Microsoft Excel or Word files) and activate the entire interface of the document's native application in the entire client area of an active document container such as the Microsoft Office Binder or Microsoft Internet Explorer. The containers act as clients, while the documents are provided by active document servers. For more information on using active documents in Internet applications, see: Active Documents on the Internet.
ActiveX controls are interactive objects that can be used in containers such as a Web site. For more information on ActiveX controls, see:
Active scripting controls the integrated behavior of one or more ActiveX controls from a browser or server. For more information on active scripting, see:
Automation (formerly known as OLE Automation) makes it possible for one application to manipulate objects implemented in another application, or to "expose" objects so they can be manipulated.
The automated object might be local or remote (on another machine accessible across a network). Automation is available for both OLE and COM objects.
This section also provides information on how to write COM components using MFC, for example, in Connection Points.
For a discussion of what is still called OLE versus what is now called active technology, see the topics on OLE.
Also, see Knowledge Base article Q248019 : HOWTO: Prevent Server Busy Dialog Box From Appearing During a Lengthy COM Operation.