For example, a desktop publishing system might send some text to a word processor or a picture to a bitmap editor using OLE.
OLE can also be used to transfer data between different applications using drag and drop or clipboard operations.
OLE 1.0, released in 1990, was an evolution of the original Dynamic Data Exchange (DDE) concept that Microsoft developed for earlier versions of Windows.
OLE servers and clients communicate with system libraries using virtual function tables, or VTBLs.
The VTBL consists of a structure of function pointers that the system library can use to communicate with the server or client.
OLE custom controls are usually shipped in the form of a dynamic link library with the .ocx extension.
OpenDoc allowed users to view and edit information across applications, directly in competition with Microsoft's proprietary OLE standard.
In 1993 some Microsoft competitors established a consortium called the Component Integration Laboratories ("CIL") to develop OpenDoc as an open standard for cross-platform linking and embedding.
Microsoft initially announced that applications using OpenDoc would be deemed compatible with OLE, and would receive certification for Windows 95.
Microsoft withheld specifications and debugged versions of OLE until after it had released its competing applications.