次の方法で共有


WsCheckMustUnderstandHeaders 関数 (webservices.h)

指定したヘッダーが受信側によって認識されたことを確認します。

メモ この関数は、受信したメッセージのすべてのヘッダーを読み取った後に呼び出す必要があります。

 

構文

HRESULT WsCheckMustUnderstandHeaders(
  [in]           WS_MESSAGE *message,
  [in, optional] WS_ERROR   *error
);

パラメーター

[in] message

理解するヘッダーを含む WS_MESSAGE 構造体へのポインター。

[in, optional] error

関数 が失敗 した場合に追加のエラー情報が格納されるWS_ERROR構造体へのポインター。

戻り値

関数が成功した場合は、NO_ERRORを返します。それ以外の場合は、HRESULT エラー コードを返します。

リターン コード 説明
WS_E_INVALID_OPERATION
メッセージが正しい状態ではありません。 詳細については、「解説」を参照してください。
WS_E_INVALID_FORMAT
検証に失敗したか、メッセージの形式が正しくありません。
E_INVALIDARG
1 つ以上の引数が無効です。
E_OUTOFMEMORY
操作を完了するためのメモリ不足。
その他のエラー
この関数は、上記以外のエラーを返す場合があります。

注釈

ヘッダーのセットは拡張可能であるため、メッセージが処理可能であると十分に理解されているかどうかを判断する必要があります。 したがって、送信者はこの関数を使用して、どのヘッダーを理解する必要があり、どのヘッダーを省略可能または情報として扱うことができるかを示すことができます。

WS_HEADER_TYPEで定義されているヘッダーなど、標準アドレス指定ヘッダーは、WsGetHeader を呼び出して読み取らない場合でも、自動的に認識されると見なされます。

WsGetCustomHeader によって読み取られるカスタムのアプリケーション定義ヘッダーも理解されていると見なされます。 WsGetCustomHeader を呼び出すと、特定のヘッダーが認識済みとして自動的にマークされます。

アプリケーションによって処理されるその他のヘッダーの場合、アプリケーションは WsMarkHeaderAsUnderstood を呼び出すことによって、ヘッダーを認識済みとして明示的にマークする必要があります。 それ以外の場合、ヘッダーは認識されないと見なされます。

この関数は、受信したメッセージのすべてのヘッダーを読み取った後に呼び出す必要があります。 この関数を呼び出す必要がある例外は、最終的なノードがチェックを実行するため、ID (メッセージ ID) を変更せずにメッセージを別のノードに転送する中継局の場合です。

指定したヘッダーのいずれかが認識されなかった場合、関数は失敗します。 エラー オブジェクトが関数に指定されると、エラーの送信に使用できる情報が設定されます ( 「WsCreateFaultFromError」を参照)。

メッセージはWS_MESSAGE_STATE_READING状態である必要があります。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll