IUPnPServiceAsync::BeginSubscribeToEvents 方法 (upnp.h)
BeginSubscribeToEvents 會以異步模式起始事件訂閱,並使用 UPnP 架構註冊應用程式回呼。
語法
HRESULT BeginSubscribeToEvents(
[in] IUnknown *pUnkCallback,
[in, optional] IUPnPAsyncResult *pAsyncResult,
[out] PULONG64 pullRequestID
);
參數
[in] pUnkCallback
指定介面對象的參考,其中包含要註冊的回呼。 這個對象必須支援 IUPnPServiceCallback 介面或 IDispatch 介面。
[in, optional] pAsyncResult
指定 IUPnPAsyncResult 對象的參考。 當 BeginSubscribeToEvents 呼叫完成時,UPnP 會使用 IUPnPAsyncResult::AsyncOperationComplete 方法來通知控制點。
[out] pullRequestID
用來識別異步 I/O 作業的 64 位 ULONG 值的指標。 控制點必須在結束或取消作業時,透過 EndSubscribeToEvents 或 CancelAsyncOperation 使用此句柄。
傳回值
傳回成功 時S_OK 。 否則,此方法會傳回 WinError.h 或下列其中一個值中定義的 COM 錯誤碼:
傳回碼 | Description |
---|---|
|
無法起始異步操作。 |
注意 某些值可能表示從 UPnP 認證的裝置收到錯誤。 如需詳細資訊,請參閱 裝置錯誤碼。
備註
使用 BeginQueryStateVariable 查詢任何事件狀態變數之前,應該先完成事件訂閱。 如果未發生此情況,則會傳回 UPNP_E_VARIABLE_VALUE_UNKNOWN ,而且事件訂閱會在內部進行。 因此,下一個 BeginQueryStateVariable 呼叫將會成功。
注意 對於沒有事件變數的服務, BeginQueryStateVariable 一律會如預期般運作。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | upnp.h |
Dll | Upnp.dll |