Compartir a través de


Función WsAcceptChannel (webservices.h)

Acepta el siguiente mensaje entrante del agente de escucha especificado.

Sintaxis

HRESULT WsAcceptChannel(
  [in]           WS_LISTENER            *listener,
  [in]           WS_CHANNEL             *channel,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

Parámetros

[in] listener

Puntero a una estructura WS_LISTENER que representa el agente de escucha. Este es el agente de escucha pasado a WsCreateChannelForListener cuando se creó el canal.

[in] channel

Puntero a una estructura WS_CHANNEL que representa el canal que se va a aceptar.

[in, optional] asyncContext

Puntero a una estructura de datos WS_ASYNC_CONTEXT con información para invocar la función de forma asincrónica. Pase un valor NULL para una operación sincrónica.

[in, optional] error

Puntero a una estructura de WS_ERROR que recibe 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_S_ASYNC
La operación asincrónica sigue pendiente.
WS_E_OPERATION_ABORTED
Se anuló el agente de escucha o el canal.
WS_E_OBJECT_FAULTED
Se ha producido un error en el agente de escucha. Consulte la sección Comentarios.
WS_E_INVALID_OPERATION
El agente de escucha o el canal o ambos estaban en un estado inadecuado. Consulte la sección Comentarios.
WS_E_ENDPOINT_DISCONNECTED
Se finalizó la conexión con el punto de conexión remoto.
WS_E_OPERATION_TIMED_OUT
La operación no se completó dentro del tiempo asignado.
WS_E_QUOTA_EXCEEDED
Se superó una cuota.
WS_E_INVALID_FORMAT
Los datos de entrada no tenían el formato esperado o no tenían el valor esperado.
E_OUTOFMEMORY
Memoria insuficiente para completar la operación.
E_INVALIDARG
Uno o varios argumentos no son válidos.
WS_E_SECURITY_VERIFICATION_FAILURE
La comprobación de seguridad no se realizó correctamente para los datos recibidos.
WS_E_SECURITY_SYSTEM_FAILURE
Error en una operación de seguridad en el marco de servicios web de Windows.
Otros errores
Esta función puede devolver otros errores no enumerados anteriormente.

Comentarios

Una vez que acepte un canal, debe cerrarlo cuando ya no lo necesite y libere los recursos llamando al
La función WsCloseChannel y, a continuación, llama a WsFreeChannel o A WsResetChannel. .

Para que WsAcceptChannel se realice correctamente, el agente de escucha debe estar en WS_LISTENER_STATE_OPEN estado y el canal debe estar en WS_CHANNEL_STATE_CREATED estado. Para obtener más información, vea las enumeraciones WS_LISTENER_STATE y WS_CHANNEL_STATE .

Si un agente de escucha está en el estado WS_LISTENER_STATE_FAULTED ,
WsAcceptChannel devuelve inmediatamente el código de error WS_E_OBJECT_FAULTED. Si una aplicación llama a WsAcceptChannel en un bucle, la aplicación debe comprobar este error para que pueda finalizar el bucle.

Requisitos

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