IOleAdviseHolder

The IOleAdviseHolder interface enables object applications to delegate the management of compound document registration requests and notifications to a special object called the OLE advise holder. The OLE advise holder implements the IOleAdviseHolder interface, which provides methods for establishing and deleting advisory connections and for sending compound document notifications to advise sinks.

When an object application uses the OLE advise holder, it passes notifications directly to the IOleAdviseHolder interface. The advise holder keeps track of which advise sinks are interested in which notifications and passes along the notifications as appropriate.

When to Implement

OLE provides a default implementation of the OLE advise holder as a convenience to programmers. Use of the default implementation is optional because object applications can be written to manage notifications themselves. By using the default code, however, you save yourself the work of re-creating the advise holder's functionality from scratch as part of your implementation of IOleObject::Advise. Few applications will require notification capabilities beyond those which the default advise holder provides.

Applications instantiate an OLE advise holder by calling the OLE API function CreateOleAdviseHolder. (OLE also provides a data advise holder to manage data notifications. Applications create a data advise holder by calling the OLE API function CreateDataAdviseHolder.)

When to Use

Containers and other objects that wish to receive compound document notifications must implement the IAdviseSink interface to receive those notifications, and call the IOleAdviseHolder interface to establish an advisory connection and inform the object of what specific notifications it wishes to receive.

Methods in VTable Order

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

IOleAdviseHolder Methods
Description
Advise
Establishes advisory connection with sink.
Unadvise
Deletes advisory connection with sink.
EnumAdvise
Lists current advisory connections.
SendOnRename
Advises that name of object has changed.
SendOnSave
Advises that object has been saved.
SendOnClose
Advises that object has been closed.

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