WsReadEnvelopeStart 関数 (webservices.h)
メッセージのヘッダーを読み取り、本文要素を読み取る準備をします。 この操作は、メッセージのヘッダーを含むリーダーから次のメッセージの先頭を読み取ります。 このプロセスでは、チャネル以外のソースからメッセージを読み取ることができます。 チャネルを使用してメッセージを読み取る場合は、 WsReadMessageStart を使用します。
構文
HRESULT WsReadEnvelopeStart(
[in] WS_MESSAGE *message,
[in] WS_XML_READER *reader,
[in, optional] WS_MESSAGE_DONE_CALLBACK doneCallback,
[in, optional] void *doneCallbackState,
[in, optional] WS_ERROR *error
);
パラメーター
[in] message
読み取る Message オブジェクトへのポインター。 ポインターは、有効な WS_MESSAGE オブジェクトを参照する必要があります。
[in] reader
読み取るメッセージを含むリーダーへのポインター。 Message オブジェクトは、現在およびそれ以降の呼び出しで Reader を使用します。
WS_MESSAGE_DONE_CALLBACK パラメーターは、WS_XML_READERが使用されなくなったことを知る方法で使用できます。
[in, optional] doneCallback
メッセージが解放されると、現在の操作の成功時に開始するコールバック関数を識別します。
[in, optional] doneCallbackState
WS_MESSAGE_DONE_CALLBACKに渡すことができるユーザー定義状態へのポインター。 コールバックが使用されていない場合、このパラメーターは NULL になる 可能性があります。
[in, optional] error
関数 が失敗 した場合にエラーに関する追加情報を格納する必要があるWS_ERROR オブジェクトへのポインター。
戻り値
この関数は、これらの値のいずれかを返すことができます。
リターン コード | 説明 |
---|---|
|
入力データの形式が正しくないか、予期した値が指定されていませんでした。 |
|
メモリ不足。 |
|
1 つ以上の引数が無効です。 |
|
この関数は、上記以外のエラーを返す場合があります。 |
解説
メッセージは WS_MESSAGE_STATE_EMPTY 状態である必要があります。 成功すると、メッセージの状態は WS_MESSAGE_STATE_READING に設定されます。
メッセージ本文の要素を読み取る場合は、 WsReadBody を使用します。 XML リーダーから直接読み取るには、 メッセージ プロパティ ID がWS_MESSAGE_PROPERTY_BODY_READER に設定された Reader を取得します。
要件
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | webservices.h |
Library | WebServices.lib |
[DLL] | WebServices.dll |