WS_DECODER_DECODE_CALLBACK callback function (webservices.h)

Decodes a message.

Syntax

WS_DECODER_DECODE_CALLBACK WsDecoderDecodeCallback;

HRESULT WsDecoderDecodeCallback(
  [in]           void *encoderContext,
                 void *buffer,
  [in]           ULONG maxLength,
  [out]          ULONG *length,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR *error
)
{...}

Parameters

[in] encoderContext

The decoder instance returned by the WS_CREATE_DECODER_CALLBACK.

buffer

The buffer to read into.

[in] maxLength

The maximum number of bytes to read.

[out] length

The number of bytes read should be returned here.

The number of bytes should be set to 0 when there are no more bytes left. This indicates the end of the decoded message data, and will cause WS_DECODER_END_CALLBACK to be invoked.

[in, optional] asyncContext

Information on how to invoke the function asynchronously, or NULL if invoking synchronously.

[in, optional] error

Specifies where additional error information should be stored if the function fails.

Return value

Return code Description
E_OUTOFMEMORY
Ran out of memory.
E_INVALIDARG
One or more arguments are invalid.
Other Errors
This function may return other errors not listed above.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps only]
Minimum supported server Windows Server 2008 R2 [desktop apps only]
Target Platform Windows
Header webservices.h