IOleAdviseHolder::Advise 方法 (oleidl.h)
在 OLE 对象与调用对象的建议接收器之间建立咨询连接。 通过该接收器,调用对象可以在重命名、保存或关闭 OLE 对象时收到通知。
语法
HRESULT Advise(
[in] IAdviseSink *pAdvise,
[out] DWORD *pdwConnection
);
参数
[in] pAdvise
指向应通知更改的通知接收器上的 IAdviseSink 接口的指针。
[out] pdwConnection
指向可传递给 IOleAdviseHolder::Unadvise 方法以删除咨询连接的令牌的指针。 调用对象负责在此指针上调用 IUnknown::AddRef 和 IUnknown::Release 。
返回值
此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。
返回代码 | 说明 |
---|---|
|
提供的 IAdviseSink 接口指针无效。 |
注解
容器、对象处理程序和链接对象都会创建建议接收器,以接收相关复合文档对象(如嵌入对象或链接对象)中的更改通知。 这些对象感兴趣的 OLE 对象必须实现 IOleObject 接口,其中包括多个咨询方法,包括 IOleObject::Advise。 对此方法的调用必须与调用它的任何建议接收器建立建议连接,并维护每个连接,直到它关闭。 它必须能够一次处理多个咨询连接。
IOleAdviseHolder::Advise 旨在用于简化 IOleObject::Advise 的实现。 可以通过调用 CreateOleAdviseHolder 获取指向 IOleAdviseHolder 的 OLE 实现 的指针,然后,若要实现 IOleObject::Advise,只需将调用委托给 IOleAdviseHolder::Advise 即可。 其他 IOleAdviseHolder 方法旨在实现其他 IOleObject 咨询方法。
如果建立咨询连接的尝试成功,则接收调用的对象将通过 pdwConnection 返回非零值。 如果尝试失败,对象将返回零。 若要删除建议连接,具有建议接收器的对象通过调用 IOleAdviseHolder::Advise 将此非零令牌传递回对象。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | oleidl.h |