IUPnPServiceAsync::EndQueryStateVariable 方法 (upnp.h)

EndQueryStateVariable 方法检索上一个 BeginQueryStateVariable 操作的结果,并检索特定于服务的结果状态变量值。

语法

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

参数

[in] ullRequestID

指向 64 位 ULONG 值的指针,该值对应于在此调用之前启动的 BeginQueryStateVariable 操作。

[out, retval] pValue

输入时,包含一个空数组。 在输出时,接收对 BeginQueryStateVariable by bstrVariableName 中指定的变量值的引用。 返回的数据类型取决于为其调用查询的状态变量。

注意 使用 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