Поделиться через


функция обратного вызова WS_CREATE_DECODER_CALLBACK (webservices.h)

Обрабатывает создание экземпляра декодера.

Синтаксис

WS_CREATE_DECODER_CALLBACK WsCreateDecoderCallback;

HRESULT WsCreateDecoderCallback(
  [in]           void *createContext,
  [in]           WS_READ_CALLBACK readCallback,
  [in]           void *readContext,
                 void **decoderContext,
  [in, optional] WS_ERROR *error
)
{...}

Параметры

[in] createContext

Объект createContext, указанный в WS_CHANNEL_DECODER используется во время создания канала.

[in] readCallback

Функция, которая должна использоваться для чтения данных сообщения. Этот обратный вызов следует использовать только в ответ на WS_DECODER_START_CALLBACK, WS_DECODER_DECODE_CALLBACK и WS_DECODER_END_CALLBACK обратных вызовов.

[in] readContext

Контекст чтения, который должен быть передан в предоставленный WS_READ_CALLBACK.

decoderContext

Возвращает экземпляр декодера. Это значение будет передано всем обратным вызовам декодера.

[in, optional] error

Указывает, где должны храниться дополнительные сведения об ошибке в случае сбоя функции.

Возвращаемое значение

Эта функция обратного вызова может возвращать одно из этих значений.

Код возврата Описание
E_OUTOFMEMORY
Не хватает памяти.
E_INVALIDARG
Один или несколько аргументов недопустимы.
Другие ошибки
Эта функция может возвращать другие ошибки, не перечисленные выше.

Комментарии

При необходимости канал создаст экземпляры декодера. Каждый экземпляр декодера будет вызываться однопоточным способом. Однако один экземпляр декодера не должен предполагать, что он будет видеть все сообщения из канала, так как канал может использовать несколько экземпляров декодера для обработки сообщений.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header webservices.h