IUPnPServiceAsync::EndInvokeAction 方法 (upnp.h)

EndInvokeAction 方法检索上一个 BeginInvokeAction 操作的结果,并检索生成的输出参数。

语法

HRESULT EndInvokeAction(
  [in, out] ULONG64 ullRequestID,
  [in, out] VARIANT *pvOutActionArgs,
  [in]      VARIANT *pvRetVal
);

参数

[in, out] ullRequestID

输入时,包含对空数组的引用。 在输出时, 接收对特定于服务的输出参数数组的引用。 如果操作没有输出参数,则此参数包含一个空数组。

注意 使用 VariantClear 清除此参数。
 

[in, out] pvOutActionArgs

输入时包含对空数组的引用。 在输出中, 接收对 VARIANT 的引用,其中包含被调用操作的返回值。

注意 使用 VariantClear 清除此参数。
 

[in] pvRetVal

对应于在此调用之前启动的 BeginInvokeAction 操作的 64 位 ULONG 值。

返回值

如果成功,则返回 S_OK。 否则,该方法将返回 WinError.h 中定义的 COM 错误代码或以下值之一:

返回代码 说明
UPNP_E_DEVICE_TIMEOUT
设备在 30 秒超时期限内未响应。
UPNP_E_DEVICE_ERROR
发生未知错误。
UPNP_E_INVALID_ARGUMENTS
传递的一个或多个参数无效。
UPNP_E_INVALID_ACTION
设备不支持此操作。
UPNP_E_ERROR_PROCESSING_RESPONSE
设备发送了无法处理的响应;例如,响应已损坏。
UPNP_E_PROTOCOL_ERROR
UPnP 控制协议级别发生错误。
UPNP_E_TRANSPORT_ERROR
发生 HTTP 错误。 使用 IUPnPService::LastTransportStatus 属性获取实际的 HTTP 状态代码。
注意 当 SOAP 响应超过 100 KB 时,也会返回此错误代码。
 
 
注意 某些值可以指示从经过 UPnP 认证的设备收到错误。 有关详细信息,请参阅 设备错误代码
 

要求

要求
最低受支持的客户端 Windows 8 [仅限桌面应用]
最低受支持的服务器 Windows Server 2012 [仅限桌面应用]
目标平台 Windows
标头 upnp.h
DLL Upnp.dll

另请参阅

IUPnPService::LastTransportStatus

IUPnPServiceAsync

IUPnPServiceAsync::BeginInvokeAction