Object Linking and Embedding

related topics
{system, computer, user}
{math, number, function}
{work, book, publish}
{language, word, form}
{company, market, business}

Object Linking and Embedding (OLE) is a technology developed by Microsoft that allows embedding and linking to documents and other objects. For developers, it brought OLE Control eXtension (OCX), a way to develop and use custom user interface elements. On a technical level, an OLE object is any object that implements the IOleObject interface, possibly along with a wide range of other interfaces, depending on the object's needs.

Contents

Overview

OLE allows an editor to "farm out" part of a document to another editor and then re-import it. For example, a desktop publishing system might send some text to a word processor or a picture to a bitmap editor using OLE. The main benefit of using OLE is to display visualizations of data from other programs that the host program is not normally able to generate itself (e.g. a pie-chart in a text document), as well as to create a master file. References to data in this file can be made and the master file can then have changed data which will then take effect in the referenced document. This is called "linking" (instead of "embedding").

Its primary use is for managing compound documents, but it is also used for transferring data between different applications using drag and drop and clipboard operations. The concept of "embedding" is also central to much use of multimedia in Web pages, which tend to embed video, animation (including Flash animations), and audio files within the hypertext markup language (such as HTML or XHTML) or other structural markup language used (such as XML or SGML) — possibly, but not necessarily, using a different embedding mechanism than OLE.

Full article ▸

related documents
MMX (instruction set)
Machine code
Journaling file system
Vim (text editor)
XUL
ACID
Talker
Complex instruction set computer
DEFLATE
UCSD Pascal
NeWS
Mozilla
Liberty BASIC
Multicast address
NewtonScript
First-generation programming language
Troff
CPAN
Quattro Pro
Baudot code
Parallel algorithm
Lotus Symphony
JFS (file system)
Enterprise Objects Framework
One instruction set computer
International Mobile Subscriber Identity
Defensive programming
Chmod
Software bug
ReiserFS