Compartir a través de


Función WsCreateChannelForListener (webservices.h)

Crea un canal asociado a un agente de escucha especificado.

Sintaxis

HRESULT WsCreateChannelForListener(
  [in]           WS_LISTENER               *listener,
                 const WS_CHANNEL_PROPERTY *properties,
  [in]           ULONG                     propertyCount,
                 WS_CHANNEL                **channel,
  [in, optional] WS_ERROR                  *error
);

Parámetros

[in] listener

Puntero a una estructura de WS_LISTENER que representa el agente de escucha para el que se va a crear un canal. El agente de escucha puede estar en cualquier estado. (Para los estados del agente de escucha, consulte la enumeración WS_LISTENER_STATE ).

properties

Matriz de estructuras de WS_CHANNEL_PROPERTY que contienen valores opcionales para la inicialización del canal. Puede ser null, en cuyo caso, el parámetro propertyCount debe ser 0 (cero).

Para obtener información sobre cómo crear un canal personalizado, vea la sección Comentarios.

[in] propertyCount

Número de propiedades de la matriz de propiedades .

channel

Si se ejecuta correctamente, un puntero que recibe la dirección del canal creado.
Cuando el canal ya no sea necesario, debe liberarlo llamando a WsFreeChannel.

[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
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

Para aceptar un intercambio de mensajes entrantes, llame a la función WsAcceptChannel .

Las características de seguridad del canal son las mismas que las especificadas para el agente de escucha.

Al crear un canal personalizado (mediante el valor WS_CUSTOM_CHANNEL_BINDING de la enumeración WS_CHANNEL_BINDING ), solo puede especificar las siguientes propiedades de canal:

  • WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS
  • WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS
Si se requieren propiedades iniciales para crear el canal personalizado, especifíquelas mediante la propiedad WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS.

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