WsGetCustomHeader 函式 (webservices.h)

尋找訊息的應用程式定義標頭,並將其還原序列化。

語法

HRESULT WsGetCustomHeader(
  [in]           WS_MESSAGE                   *message,
  [in]           const WS_ELEMENT_DESCRIPTION *customHeaderDescription,
  [in]           WS_REPEATING_HEADER_OPTION   repeatingOption,
  [in]           ULONG                        headerIndex,
  [in]           WS_READ_OPTION               readOption,
  [in, optional] WS_HEAP                      *heap,
                 void                         *value,
  [in]           ULONG                        valueSize,
                 ULONG                        *headerAttributes,
  [in, optional] WS_ERROR                     *error
);

參數

[in] message

包含標頭的訊息。

訊息可以處於任何狀態,但 WS_MESSAGE_STATE_EMPTY

[in] customHeaderDescription

描述標頭專案的 WS_ELEMENT_DESCRIPTION

[in] repeatingOption

標頭是否可能會在訊息中出現一次以上。

如果使用 WS_REPEATING_HEADER ,則標頭索引會指出要傳回指定 headerName 的標頭。

如果使用 WS_SINGLETON_HEADER ,則 headerIndex 必須為零。

[in] headerIndex

標頭集合內具有指定 headerName 之標頭之以零起始的索引。

[in] readOption

值是否為必要專案,以及如何配置值。 如需詳細資訊 ,請參閱WS_READ_OPTION

[in, optional] heap

要儲存還原序列化標頭資料的堆積。 如果這是Null,則WS_READ_OPTION會視需要使用訊息堆積。

value

此參數的解譯取決於 WS_READ_OPTION

[in] valueSize

此參數的解譯取決於 WS_READ_OPTION

headerAttributes

傳回此標頭 的WS_HEADER_ATTRIBUTES 。 指標可以是 Null,在此情況下不會傳回任何屬性。

[in, optional] error

指定函式失敗時應該儲存其他錯誤資訊的位置。

傳回值

此函式可以傳回其中一個值。

傳回碼 描述
WS_E_INVALID_FORMAT
標頭不存在,而且是必要的。

已指定WS_SINGLETON_HEADER ,而且訊息中存在多個標頭類型的實例。

輸入資料的格式不正確。

WS_E_QUOTA_EXCEEDED
已超過堆積的大小配額。
E_OUTOFMEMORY
記憶體不足,無法還原序列化標頭。
E_INVALIDARG
一或多個參數不正確。
其他錯誤
此函式可能會傳回上述未列出的其他錯誤。

備註

此 API 會在以最終接收者為目標的標頭上運作。
此 API 會忽略以最終接收者以外的角色/動作專案為目標的標頭。

規格需求

   
最低支援的用戶端 Windows 7 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 webservices.h
程式庫 WebServices.lib
Dll WebServices.dll