Compartir a través de


Función WsFillBody (webservices.h)

Garantiza que hay un número suficiente de bytes disponibles en un mensaje para su lectura. Es necesario que la aplicación especifique el número de bytes suficiente para contener la siguiente construcción XML que se va a leer.

Nota Se llama a esta función antes de usar WsReadBody o el Lector XML del mensaje para leer el cuerpo del mensaje.
 

Esta función es un acceso directo para llamar a WsFillReader para el lector XML que se usa para escribir el mensaje. Llamar directamente a WsFillReader equivale a llamar a esta función.

Sintaxis

HRESULT WsFillBody(
  [in]           WS_MESSAGE             *message,
  [in]           ULONG                  minSize,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

Parámetros

[in] message

Puntero a la estructura WS_MESSAGE destinada a "relleno".

[in] minSize

Número mínimo de bytes que el mensaje debe tener almacenado en búfer. Si el recuento de bytes actual almacenado en búfer es igual o mayor que el valor de minSize , la función no hace nada.

Nota El valor de minSize representa el tamaño de la forma codificada del XML que se espera. Esto puede variar según la codificación y también cómo se estructura el XML real. El uso típico de esta función es seleccionar un recuento de bytes de límite superior esperado para la codificación o la estructura XML para asegurarse de que se leen los datos esperados.
 

[in, optional] asyncContext

Puntero a una estructura de datos WS_ASYNC_CONTEXT con información sobre la invocación de la función de forma asincrónica. Un valor NULL indica una solicitud de operación sincrónica.

[in, optional] error

Puntero a un objeto WS_ERROR donde se debe almacenar información adicional sobre el error si se produce un error en la función.

Valor devuelto

Esta función puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
El inicio del mensaje se recibió correctamente.
WS_S_ASYNC
La operación asincrónica sigue pendiente.
WS_E_INVALID_FORMAT
Los datos de entrada no tenían el formato esperado o no tenían el valor esperado.
E_INVALIDARG
Uno o más argumentos no son válidos.
E_OUTOFMEMORY
Se quedó sin memoria.
Otros errores
Esta función puede devolver otros errores no enumerados anteriormente.

Comentarios

Esta función se usa normalmente al escribir el cuerpo del mensaje con el modo transmitido establecido en WS_STREAMED_OUTPUT_TRANSFER_MODE, o cuando se usa un lector XML en modo transmitido.

Esta función es un "no-op" al escribir el cuerpo del mensaje y no se establece WS_STREAMED_OUTPUT_TRANSFER_MODE o con un modo lector XML establecido en WS_XML_READER_BUFFER_INPUT.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 R2 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado webservices.h
Library WebServices.lib
Archivo DLL WebServices.dll