Función WsCheckMustUnderstandHeaders (webservices.h)

Comprueba que el receptor entendió los encabezados especificados.

Nota Se debe llamar a esta función una vez leídos todos los encabezados para un mensaje recibido.

 

Sintaxis

HRESULT WsCheckMustUnderstandHeaders(
  [in]           WS_MESSAGE *message,
  [in, optional] WS_ERROR   *error
);

Parámetros

[in] message

Puntero a la estructura WS_MESSAGE que contiene los encabezados que se van a entender.

[in, optional] error

Puntero a una estructura de WS_ERROR donde se almacena información de error adicional si se produce un error en la función.

Valor devuelto

Si la función se realiza correctamente, devuelve NO_ERROR; de lo contrario, devuelve un código de error HRESULT.

Código devuelto Descripción
WS_E_INVALID_OPERATION
El mensaje no está en el estado correcto. Para obtener más información, vea la sección Comentarios.
WS_E_INVALID_FORMAT
Error en la validación o el mensaje no se ha formado correctamente.
E_INVALIDARG
Uno o más argumentos no son válidos.
E_OUTOFMEMORY
Memoria insuficiente para completar la operación.
Otros errores
Esta función puede devolver otros errores no enumerados anteriormente.

Comentarios

Dado que el conjunto de encabezados es extensible, es necesario determinar si un mensaje se ha comprendido suficientemente para procesarse. Por lo tanto, el remitente puede usar esta función para indicar qué encabezados deben entenderse, qué encabezados se pueden tratar como opcionales o informativos.

Se supone que los encabezados de direccionamiento estándar, como los definidos en WS_HEADER_TYPE, se entiende automáticamente, incluso si nunca se leen mediante una llamada a WsGetHeader.

También se supone que se comprenden los encabezados personalizados definidos por la aplicación leídos por WsGetCustomHeader . Al llamar a WsGetCustomHeader , se marcará automáticamente el encabezado en particular tal y como se entiende.

Para cualquier otro encabezado procesado por la aplicación, la aplicación debe marcar explícitamente el encabezado tal y como se entiende llamando a WsMarkHeaderAsUnderstood. De lo contrario, el encabezado se considera que no se entiende.

Se debe llamar a esta función una vez leídos todos los encabezados para un mensaje recibido. Una excepción a tener que llamar a esta función es el caso de un intermediario que reenvía el mensaje a otro nodo sin cambiar su identidad (identificador de mensaje), ya que el nodo final realizará la comprobación.

Se producirá un error en la función si no se entendió alguno de los encabezados especificados. Si se proporciona un objeto de error a la función, se rellenará con información que se puede usar para enviar un error (vea WsCreateFaultFromError).

El mensaje debe estar en estado WS_MESSAGE_STATE_READING.

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