OLE (Object Linking and Embedding)

OLE (Object Linking and Embedding) is Microsoft's framework for a compound document technology. Briefly, a compound document is something like a display desktop that can contain visual and information objects of all kinds: text, calendars, animations, sound, motion video, 3-D, continually updated news, controls, and so forth. Each desktop object is an independent program entity that can interact with a user and also communicate with other objects on the desktop. Part of Microsoft's ActiveX technologies, OLE takes advantage and is part of a larger, more general concept, the Component Object Model (COM) and its distributed version, DCOM. An OLE object is necessarily also a component (or COM object).

Some main concepts in OLE and COM are:

Microsoft terms are shown first; industry or alternative versions of those terms are shown in parentheses:

Concept What it is
OLE A set of APIs to create and display a (compound) document
Document (compound document) A presentation of different items in an "animated desktop"
Item (object; also called a component) An element in a document, such as an animated calendar, a video window, a sound player, a sound file...
Container or container application The program entity that holds a document or a control
Server or server application The program entity that holds an item within an OLE container
Embedding Adding the source data for an item to a document; use the Paste command in a container application
Linking Adding a link to the source data for an item to a document; use the Paste Link command in a container application
Visual editing Activating an item that is embedded in a document and "editing" it
Automation Having one container or server application drive another application
Compound files (structured storage) A standard file format that simplifies the storing of (compound) documents; consists of storages (similar to directories) and streams (similar to files)
Uniform Data Transfer (UDT) A single data transfer interface that accommodates drag-and-drop; clipboard; and dynamic data exchange (DDE)
Component Object Model (COM) Provides the underlying support for OLE items (objects) and ActiveX controls to communicate with other OLE objects or ActiveX controls
ActiveX control An item (object) that can be distributed and run on top of a COM
Microsoft Foundation Class (MCF) library A set of ready-made classes or templates that can be used to build container and server applications

says that OLE contains about 660 new function calls or individual program interfaces in addition to those already in Win32. For this reason, Microsoft provides the Microsoft Foundation Class (MFC) Library, a set of ready-made classes that can be used to build container and server applications, and tools such as Visual C++.

In the "Introduction to OLE" on its Developer Site, Microsoft says that "OLE" no longer stands for "Object Linking and Embedding," but just for the letters "OLE."

This was last updated in April 2005

Continue Reading About OLE (Object Linking and Embedding)

Dig Deeper on SharePoint administration and troubleshooting