IOleAdviseHolder::Advise
Establishes
an advisory connection between an OLE object and the calling object s advise
sink. Through that sink, the calling object can receive notification when the
OLE object is renamed, saved, or closed.
HRESULT Advise(
IAdviseSink * pAdvise, |
//Pointer to the advise sink on the calling object |
DWORD * pdwConnection |
//Pointer to a token |
); |
|
Parameters
pAdvise
[in] Pointer
to the IAdviseSink interface on the advisory sink that should be
informed of changes.
pdwConnection
[out] Pointer
to a token that can be passed to the IOleAdviseHolder::Unadvise
Return Values
This method
supports the standard return value E_INVALIDARG, as well as the following:
S_OK
Advisory
connections set up successfully.
Remarks
Containers,
object handlers, and link objects all create advise sinks to receive
notification of changes in compound-document objects of interest, such as
embedded or linked objects. OLE objects of interest to these objects must
implement the IOleObject interface, which includes several advisory
methods, including IOleObject::Advise
IOleAdviseHolder::Advise is intended to be used to simplify the implementation
of IOleObject::Advise. You can get a pointer to the OLE implementation
of IOleAdviseHolder by calling CreateOleAdviseHolder
If the
attempt to establish an advisory connection is successful, the object receiving
the call returns a nonzero value through pdwConnection. If the attempt
fails, the object returns a zero. To delete an advisory connection, the object
with the advise sink passes this nonzero token back to the object by calling IOleAdviseHolder::Unadvise.
See Also