共用方式為


IUPnPServiceAsync::EndQueryStateVariable 方法 (upnp.h)

EndQueryStateVariable方法會擷取先前BeginQueryStateVariable作業的結果,並擷取結果服務特定的狀態變數值。

語法

HRESULT EndQueryStateVariable(
  [in]          ULONG64 ullRequestID,
  [out, retval] VARIANT *pValue
);

參數

[in] ullRequestID

64 位 ULONG 值的指標,該值對應至在此呼叫之前起始的 BeginQueryStateVariable 作業。

[out, retval] pValue

在輸入上,包含空陣列。 在輸出時,會透過bstrVariableName接收BeginQueryStateVariable中所指定變數值的參考。 傳回的資料類型取決於叫用查詢的狀態變數。

注意 使用 VariantClear清除此參數。
 

傳回值

傳回成功 時S_OK 。 否則,此方法會傳回 WinError.h 或下列其中一個值中定義的 COM 錯誤碼:

傳回碼 描述
UPNP_E_DEVICE_ERROR
狀態變數不會發生事件,而且遠端查詢傳回錯誤碼。 這不是傳輸錯誤;裝置收到要求,但傳回錯誤。
UPNP_E_INVALID_VARIABLE
要求的狀態變數不存在。
UPNP_E_DEVICE_TIMEOUT
裝置未在 30 秒逾時期間內回應。
UPNP_E_INVALID_ARGUMENTS
使用 vInActionArgs 傳遞的一或多個引數無效。
UPNP_E_PROTOCOL_ERROR
查詢未完成,因為 UPnP 通訊協定層級發生問題。
UPNP_E_TRANSPORT_ERROR
狀態變數不會發生事件,而且值的遠端查詢因為 HTTP 問題而失敗。 若要擷取 HTTP 錯誤碼,請使用 IUPnPService::LastTransportStatus
UPNP_E_VARIABLE_VALUE_UNKNOWN
狀態變數已發生事件,但 UPnP 軟體無法傳回值,因為它仍在等候事件通知。
 
注意 某些值可能表示從 UPnP 認證的裝置收到錯誤。 如需詳細資訊,請參閱 裝置錯誤碼
 

規格需求

   
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 upnp.h
Dll Upnp.dll

另請參閱

IUPnPService::LastTransportStatus

IUPnPServiceAsync

IUPnPServiceAsync::EndQueryStateVariable