An application that uses OLE can cooperate with other OLE applications to produce a document containing different kinds of data, all of which can be easily manipulated by the user. The user editing such a document is able to improve the document by using the best features of many different applications. An application that implements OLE gives its users the ability to move away from an application-centered view of computing and toward a document-centered view. In application-centered computing the tool used to complete a task is often a single application; whereas, in document-centered computing, a user can combine the advantages of many tools to complete a job.
A document that uses linked and embedded objects can contain many kinds of data in many different formats; such a document is called a compound document. A compound document uses the facilities of different OLE applications to manipulate the different kinds of data it displays. Any kind of data format can be incorporated into a compound document; with little or no extra code, OLE applications can even support data formats that have not yet been invented. The user working with a compound document does not need to know which data formats are compatible with one another or how to find and start any applications that created the data. Whenever a user chooses to work with part of a compound document, the application responsible for that part of the document starts automatically.
The OLE functions include:
Function | Description |
OleActivate | Activates an object |
OleBlockServer | Queues incoming requests for the server |
OleClone | Makes a copy of an object |
OleClose | Closes specified object |
OleCopyFromLink | Makes an embedded copy of a linked object |
OleCopyToClipboard | Puts the specified object on the clipboard |
OleCreate | Creates an object of a specified class |
OleCreateFromClip | Creates an object from the clipboard |
OleCreateFromFile | Creates an object from a file |
OleCreateFromTemplate | Creates an object from a template |
OleCreateLinkFromClip | Creates link to object from the clipboard |
OleCreateLinkFromFile | Creates link to object in a file |
OleDelete | Deletes an object |
OleDraw | Draws an object into a device context |
OleEnumFormats | Enumerates data formats for an object |
OleEnumObjects | Enumerates objects in a document |
OleEqual | Compares two objects for equality |
OleExecute | Sends DDE execute commands to a server |
OleGetData | Retrieves data for an object in a specified format |
OleGetLinkUpdateOptions | Retrieves update options for an object |
OleLoadFromStream | Loads an object from containing document |
OleLockServer | Keeps server in memory |
OleObjectConvert | Creates a new object using a specified protocol |
OleQueryBounds | Retrieves bounding rectangle for object |
OleQueryClientVersion | Retrieves version of client library |
OleQueryCreateFromClip | Retrieves create data for clipboard object |
OleQueryLinkFromClip | Retrieves link data for clipboard object |
OleQueryName | Retrieves the name of an object |
OleQueryOpen | Determines whether an object is open |
OleQueryOutOfDate | Determines whether an object is out-of-date |
OleQueryProtocol | Determines if an object supports a protocol |
OleQueryReleaseError | Determines status of released operation |
OleQueryReleaseMethod | Determines which operation released |
OleQueryReleaseStatus | Determines whether an operation released |
OleQueryServerVersion | Retrieves version of server library |
OleQuerySize | Retrieves the size of an object |
OleQueryType | Determines if object is linked, embedded, or static |
OleReconnect | Reconnects to an open linked object |
OleRegisterClientDoc | Registers a document with the library |
OleRegisterServer | Registers the specified server |
OleRegisterServerDoc | Registers document with server library |
OleRelease | Releases an object from memory |
OleRename | Informs library an object is renamed |
OleRenameClientDoc | Informs library a document is renamed |
OleRenameServerDoc | Informs library a document is renamed |
OleRequestData | Retrieves data from a server in a specified format |
OleRevertClientDoc | Informs library a doc reverted to saved state |
OleRevertServerDoc | Informs library a doc is reset to saved state |
OleRevokeClientDoc | Informs library a document is not open |
OleRevokeObject | Revokes access to an object |
OleRevokeServer | Revokes the specified server |
OleRevokeServerDoc | Revokes the specified document |
OleSavedClientDoc | Informs library a doc has been saved |
OleSavedServerDoc | Informs library a doc has been saved |
OleSaveToStream | Saves an object to the stream |
OleSetBounds | Sets bounding rectangle for object |
OleSetColorScheme | Specifies client's recommended object colors |
OleSetData | Sends data in specified format to server |
OleSetHostNames | Sets container name and container's object name |
OleSetLinkUpdateOptions | Sets update options for an object |
OleSetTargetDevice | Sets target device for an object |
OleUnblockServer | Processes requests from queue |
OleUnlockServer | Releases server locked with OleLockServer |
OleUpdate | Updates an object |