Función WsSendMessage (webservices.h)
Envíe un mensaje en un canal mediante la serialización para escribir el elemento body.
Sintaxis
HRESULT WsSendMessage(
[in] WS_CHANNEL *channel,
[in] WS_MESSAGE *message,
[in] const WS_MESSAGE_DESCRIPTION *messageDescription,
[in] WS_WRITE_OPTION writeOption,
const void *bodyValue,
[in] ULONG bodyValueSize,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parámetros
[in] channel
Canal en el que se va a enviar el mensaje.
[in] message
Objeto de mensaje que se va a usar para enviar.
El objeto message debe estar en WS_MESSAGE_STATE_EMPTY o WS_MESSAGE_STATE_INITIALIZED.
[in] messageDescription
El campo de acción del WS_MESSAGE_DESCRIPTION se usa como encabezado de acción para el mensaje. Este campo puede ser NULL si no se requiere ninguna acción.
El campo bodyElementDescription del WS_MESSAGE_DESCRIPTION se usa para serializar el cuerpo del mensaje. Este campo puede ser NULL si no se desea ningún elemento body. Vea WsWriteBody para obtener información sobre cómo se usa bodyElementDescription para serializar el valor.
[in] writeOption
Indica si se requiere el elemento body y cómo se asigna el valor. Esto solo se usa cuando se desea un elemento body. Para obtener más información, consulte WS_WRITE_OPTION y WsWriteBody.
bodyValue
Valor que se va a serializar en el cuerpo del mensaje.
[in] bodyValueSize
Tamaño del valor que se serializa, en bytes.
[in, optional] asyncContext
Información sobre cómo invocar la función de forma asincrónica o NULL si invoca de forma sincrónica.
[in, optional] error
Especifica dónde se debe almacenar información de error adicional 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 |
---|---|
|
La operación asincrónica sigue pendiente. |
|
Se anuló la operación. |
|
No se permite la operación debido al estado actual del objeto . |
|
El punto de conexión remoto no existe o no se pudo encontrar. |
|
El punto de conexión remoto denegó el acceso. |
|
Se finalizó la conexión con el punto de conexión remoto. |
|
El punto de conexión remoto no pudo procesar la solicitud. |
|
El punto de conexión remoto no está actualmente en servicio en esta ubicación. |
|
El punto de conexión remoto no puede procesar la solicitud debido a la sobrecarga. |
|
No se pudo acceder al punto de conexión remoto. |
|
La dirección URL de la dirección del punto de conexión no es válida. |
|
Los datos de entrada no tenían el formato esperado o no tenían el valor esperado. |
|
La operación no se completó dentro del tiempo asignado. |
|
El servidor proxy HTTP denegó el acceso. |
|
El servidor proxy HTTP no pudo procesar la solicitud. |
|
Se superó una cuota. |
|
La comprobación de seguridad no se realizó correctamente para los datos recibidos. |
|
Error en una operación de seguridad en el marco de servicios web de Windows. |
|
El servidor rechazó un token de seguridad porque ha expirado. |
|
El servidor proxy HTTP requiere el esquema de autenticación HTTP "básico". |
|
El servidor proxy HTTP requiere el esquema de autenticación HTTP 'digest'. |
|
El servidor proxy HTTP requiere el esquema de autenticación HTTP "negotiate". |
|
El servidor proxy HTTP requiere el esquema de autenticación HTTP "NTLM". |
|
El punto de conexión remoto requiere el esquema de autenticación HTTP "básico". |
|
El punto de conexión remoto requiere el esquema de autenticación HTTP "digest". |
|
El punto de conexión remoto requiere el esquema de autenticación HTTP "negotiate". |
|
El punto de conexión remoto requiere el esquema de autenticación HTTP "NTLM". |
|
Un certificado necesario no está dentro de su período de validez al comprobar con el reloj del sistema actual o la marca de tiempo en el archivo firmado. |
|
El nombre CN de los certificados no coincide con el valor pasado. |
|
Cadena de certificados procesada, pero terminada en un certificado raíz que no es de confianza para el proveedor de confianza. |
|
El certificado no es válido para el uso solicitado. |
|
La función de revocación no pudo comprobar la revocación debido a que el servidor de revocación estaba sin conexión. |
|
Se quedó sin memoria. |
|
Uno o más argumentos no son válidos. |
|
Esta función puede devolver otros errores no enumerados anteriormente. |
Comentarios
Para incluir encabezados personalizados con el mensaje, inicialice el mensaje WsInitializeMessage con WS_BLANK_MESSAGE y agregue los encabezados mediante WsAddCustomHeader antes de llamar a esta función.
Requisitos
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 |