次の方法で共有


WS_CREATE_ENCODER_CALLBACK コールバック関数 (webservices.h)

エンコーダー インスタンスの作成を処理します。

構文

WS_CREATE_ENCODER_CALLBACK WsCreateEncoderCallback;

HRESULT WsCreateEncoderCallback(
  [in]           void *createContext,
  [in]           WS_WRITE_CALLBACK writeCallback,
  [in]           void *writeContext,
                 void **encoderContext,
  [in, optional] WS_ERROR *error
)
{...}

パラメーター

[in] createContext

WS_CHANNEL_ENCODERで指定された createContext は、 チャネルの作成時に使用されます。

[in] writeCallback

メッセージ データの書き込みに使用する関数。 このコールバックは、WS_ENCODER_START_CALLBACK、WS_ENCODER_ENCODE_CALLBACKおよびWS_ENCODER_END_CALLBACKコールバックへの応答でのみ使用する必要があります。

[in] writeContext

指定した WS_WRITE_CALLBACKに渡す必要がある書き込みコンテキスト。

encoderContext

エンコーダー インスタンスを返します。 この値は、すべてのエンコーダー コールバックに渡されます。

[in, optional] error

関数が失敗した場合に追加のエラー情報を格納する場所を指定します。

戻り値

このコールバック関数は、これらの値のいずれかを返すことができます。

リターン コード 説明
E_OUTOFMEMORY
メモリが不足しました。
E_INVALIDARG
1 つ以上の引数が無効です。
その他のエラー
この関数は、上記以外のエラーを返す場合があります。

注釈

チャネルは、必要に応じてエンコーダー インスタンスを作成します。 各エンコーダー インスタンスは、シングル スレッド形式で呼び出されます。 ただし、1 つのエンコーダー インスタンスでは、チャネルがメッセージの処理に複数のエンコーダー インスタンスを使用する可能性があるため、チャネルからのすべてのメッセージが表示されるとは限りません。

要件

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