IConnectionPoint::Advise 方法 (ocidl.h)
建立連接點對象與用戶端接收之間的連線。
語法
HRESULT Advise(
[in] IUnknown *pUnkSink,
[out] DWORD *pdwCookie
);
參數
[in] pUnkSink
客戶端建議接收上 IUnknown 介面的指標。 用戶端的接收會從連接點接收傳出呼叫。
[out] pdwCookie
可唯一識別此連線之傳回令牌的指標。 呼叫端稍後會使用此令牌來刪除連線,方法是將它傳遞至 IConnectionPoint::Unadvise 方法。 如果連線未成功建立,則此值為零。
傳回值
這個方法可以傳回標準傳回值E_OUTOFMEMORY和E_UNEXPECTED,以及下列值。
傳回碼 | 描述 |
---|---|
|
已建立連線,且 *pdwCookie 具有連線令牌。 |
|
pUnkSink 或 pdwCookie 中的值無效。 例如,任一指標可能是 NULL。 |
|
連接點已達到連線限制,無法接受更多連線。 |
|
接收不支援這個連接點所需的介面。 |
備註
建議 在連接點與以 pUnkSink 識別的呼叫端接收之間建立連線。
連接點必須呼叫 QueryInterface ,以取得正確的傳出介面指標,以在事件發生時呼叫,並針對連接點所管理的傳出介面取得 IID。 當 IID 傳遞至 IConnectionPointContainer::FindConnectionPoint 方法時,會傳回這個相同連接點的介面指標。
實作者的注意事項
連接點必須查詢 pUnkSink 指標是否有正確的傳出介面。 如果此查詢失敗,這個方法必須傳回CONNECT_E_CANNOTCONNECT。pdwCookie 值對於連接點的任何指定實例的每個連線都必須是唯一的。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | ocidl.h |