WsReadEndpointAddressExtension 函数 (webservices.h)

读取 WS_ENDPOINT_ADDRESS的扩展。

语法

HRESULT WsReadEndpointAddressExtension(
  [in]           WS_XML_READER                      *reader,
  [in]           WS_ENDPOINT_ADDRESS                *endpointAddress,
  [in]           WS_ENDPOINT_ADDRESS_EXTENSION_TYPE extensionType,
  [in]           WS_READ_OPTION                     readOption,
  [in]           WS_HEAP                            *heap,
                 void                               *value,
  [in]           ULONG                              valueSize,
  [in, optional] WS_ERROR                           *error
);

参数

[in] reader

用于读取扩展的 XML 读取器。

函数将根据需要自动设置读取器的输入以读取扩展。

[in] endpointAddress

包含扩展的终结点地址。

[in] extensionType

要读取的扩展的类型。

[in] readOption

值是否是必需的,以及如何分配该值。 有关详细信息 ,请参阅WS_READ_OPTION

此参数必须具有以下值之一:

[in] heap

用于存储读取的值的堆。

value

要放置读取值的缓冲区的地址。

如果将 WS_READ_REQUIRED_VALUE 用于 readOption 参数,则缓冲区的大小必须是要读取的扩展类型的大小, (该大小因 WS_ENDPOINT_ADDRESS_EXTENSION_TYPE) 而异。

如果使用 WS_READ_REQUIRED_POINTERWS_READ_OPTIONAL_POINTER,缓冲区应为指针的大小。

[in] valueSize

调用方为读取的值分配的缓冲区的大小。

此大小应对应于使用 value 参数传递的缓冲区的大小。

[in, optional] error

指定函数失败时应存储其他错误信息的位置。

返回值

此函数可以返回其中一个值。

返回代码 说明
E_INVALIDARG
扩展类型无效。

提供的缓冲区的大小不正确。

必需的参数为 NULL

WS_E_INVALID_FORMAT
输入数据未采用预期格式或没有预期值。
E_OUTOFMEMORY
内存不足。
其他错误
此函数可能会返回上面未列出的其他错误。

注解

在释放或重置堆之前,返回的值是有效的。

如果请求的扩展类型在扩展缓冲区中多次出现,则返回第一个实例。

要求

要求
最低受支持的客户端 Windows 7 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2 [桌面应用 |UWP 应用]
目标平台 Windows
标头 webservices.h
Library WebServices.lib
DLL WebServices.dll