IOleObject::Advise 方法 (oleidl.h)
建立複合檔物件與呼叫對象建議接收之間的諮詢連接,當複合文件物件重新命名、儲存或關閉時,呼叫物件會透過該接收通知。
語法
HRESULT Advise(
[in] IAdviseSink *pAdvSink,
[out] DWORD *pdwConnection
);
參數
[in] pAdvSink
呼叫物件之建議接收上的 IAdviseSink 介面指標。
[out] pdwConnection
可傳遞至 IOleObject::Unadvise 以刪除諮詢連線的令牌指標。
傳回值
此方法會在成功時傳回S_OK。 其他可能的傳回值包括下列專案。
傳回碼 | Description |
---|---|
|
此作業可用的記憶體不足。 |
備註
IOleObject::Advisor 方法會設定物件與其容器之間的諮詢連線,物件會透過該連接通知容器的關閉、儲存、重新命名和連結來源變更事件接收。 容器通常會在初始化物件時呼叫這個方法,向對象註冊其諮詢接收。 在傳回中,物件會呼叫 IAdviseSink 或 IAdviseSink2 來傳送容器複合檔通知。
如果容器和物件成功建立諮詢連線,接收呼叫的物件會透過 pdwConnection 傳回非零值給容器。 如果嘗試建立諮詢連接失敗,對象會傳回零。 若要刪除諮詢連線,容器會呼叫 IOleObject::Unadvise ,並將這個非零令牌傳回物件。
物件可以將管理和追蹤諮詢事件的作業委派給 OLE 建議持有者,您可以藉由呼叫 CreateOleAdviseHolder 來取得指標。 傳回的 IOleAdviseHolder 介面有三種方法可傳送諮詢通知,以及 IOleAdviseHolder::Advisor、 IOleAdviseHolder::Unadvise 和IOleAdviseHolder::EnumAdvise 方法,與 IOleObject 的方法相同。 對 IOleObject::Advise、 IOleObject::Unadvise 或 IOleObject::EnumAdvise 的呼叫會委派給建議持有者中的對應方法。
若要終結建議持有者,只要在 IOleAdviseHolder 介面上呼叫 IUnknown::Release 即可。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | oleidl.h |