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_CALLBACKWS_ENCODER_ENCODE_CALLBACKWS_ENCODER_END_CALLBACK回 呼。

[in] writeContext

應該傳遞至所提供 WS_WRITE_CALLBACK的寫入內容。

encoderContext

傳回編碼器實例。 此值會傳遞至所有編碼器回呼。

[in, optional] error

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

傳回值

這個回呼函式可以傳回下列其中一個值。

傳回碼 Description
E_OUTOFMEMORY
記憶體不足。
E_INVALIDARG
一或多個引數無效。
其他錯誤
此函式可能會傳回上面未列出的其他錯誤。

備註

通道會視需要建立編碼器實例。 每個編碼器實例都會以單個線程方式呼叫。 不過,單一編碼器實例不應該假設它會看到來自通道的所有訊息,因為通道可能會使用多個編碼器實例來處理訊息。

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 webservices.h