IOleObject

The IOleObject interface is the principal means by which an embedded object provides basic functionality to, and communicates with, its container.

When to Implement

An object application must implement this interface, along with at least IDataObject and IPersistStorage, for each type of embedded object that it supports. Although this interface contains 21 member functions, only three are both essential and nontrivial to implement: DoVerb, SetHostNames, and Close. Six of the member functions are optional: SetExtent, InitFromData, GetClipboardData, SetColorScheme, SetMoniker, and GetMoniker. The latter two member functions are useful mainly for enabling links to embedded objects.

When to Use

Call the methods of this interface to enable a container to communicate with an embedded object. A container must call DoVerb to activate an embedded object, SetHostNames to communicate the names of the container application and container document, and Close to move an object from a running to a loaded state. Calls to all other member functions are optional.

Methods in VTable Order

IUnknown Methods
Description
QueryInterface
Returns pointers to supported interfaces.
AddRef
Increments reference count.
Release
Decrements reference count.

IOleObject Methods
Description
SetClientSite
Informs object of its client site in container.
GetClientSite
Retrieves object's client site.
SetHostNames
Communicates names of container application and container document.
Close
Moves object from running to loaded state.
SetMoniker
Informs object of its moniker.
GetMoniker
Retrieves object's moniker.
InitFromData
Initializes embedded object from selected data.
GetClipboardData
Retrieves a data transfer object from the Clipboard.
DoVerb
Invokes object to perform one of its enumerated actions ("verbs").
EnumVerbs
Enumerates actions ("verbs") for an object.
Update
Updates an object.
IsUpToDate
Checks if object is up to date.
GetUserClassID
Returns an object's class identifier.
GetUserType
Retrieves object's user-type name.
SetExtent
Sets extent of object's display area.
GetExtent
Retrieves extent of object's display area.
Advise
Establishes advisory connection with object.
Unadvise
Destroys advisory connection with object.
EnumAdvise
Enumerates object's advisory connections.
GetMiscStatus
Retrieves status of object.
SetColorScheme
Recommends color scheme to object application.

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database