Funzione WsCreateChannel (webservices.h)
Crea un canale per lo scambio di messaggi con un endpoint.
Sintassi
HRESULT WsCreateChannel(
[in] WS_CHANNEL_TYPE channelType,
[in] WS_CHANNEL_BINDING channelBinding,
[in] const WS_CHANNEL_PROPERTY *properties,
[in] ULONG propertyCount,
[in, optional] const WS_SECURITY_DESCRIPTION *securityDescription,
WS_CHANNEL **channel,
[in, optional] WS_ERROR *error
);
Parametri
[in] channelType
Tipo del canale. Per i tipi di canale, vedere l'enumerazione WS_CHANNEL_TYPE . Questo rappresenta il modello di scambio dei messaggi per il canale creato.
[in] channelBinding
Associazione del canale, che indica lo stack di protocolli da usare per il nuovo canale. Per le associazioni di canale disponibili, vedere l'enumerazione WS_CHANNEL_BINDING .
[in] properties
Matrice di strutture WS_CHANNEL_PROPERTY contenenti valori facoltativi per l'inizializzazione del canale. Il valore di questo parametro può essere NULL, in tal caso, il parametro propertyCount deve essere 0 (zero).
Per informazioni sulle proprietà del canale che è possibile specificare quando si crea un canale, vedere l'enumerazione WS_CHANNEL_PROPERTY_ID .
Per informazioni sulla creazione di un canale personalizzato, vedere la sezione Osservazioni.
[in] propertyCount
Numero di proprietà nella matrice delle proprietà .
[in, optional] securityDescription
Puntatore a una struttura WS_SECURITY_DESCRIPTION che specifica la sicurezza per il canale.
Se si sta creando un canale personalizzato (usando il valore WS_CUSTOM_CHANNEL_BINDING dell'enumerazione WS_CHANNEL_BINDING ), la descrizione della sicurezza deve essere NULL. Vedere la sezione relativa alle osservazioni.
channel
Puntatore che riceve l'indirizzo del canale creato.
Quando il canale non è più necessario, è necessario liberarlo chiamando WsFreeChannel.
[in, optional] error
Puntatore a una struttura WS_ERROR che riceve informazioni di errore aggiuntive se la funzione ha esito negativo.
Valore restituito
Se la funzione ha esito positivo, restituisce NO_ERROR; in caso contrario, restituisce un codice di errore HRESULT.
Codice restituito | Descrizione |
---|---|
|
Uno o più argomenti non sono validi. |
|
Memoria insufficiente per completare l'operazione. |
|
Questa funzione può restituire altri errori non elencati sopra. |
Commenti
Usare la funzione WsOpenChannel per avviare la comunicazione sul canale e per specificare l'endpoint.
Quando si crea un canale personalizzato (usando il valore WS_CUSTOM_CHANNEL_BINDING dell'enumerazione WS_CHANNEL_BINDING ), è possibile specificare solo le proprietà del canale seguenti:
- WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS
- WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS
Per passare le informazioni di sicurezza a un'implementazione del canale personalizzata, usare il valore WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS dell'enumerazione WS_CHANNEL_PROPERTY_ID .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | webservices.h |
Libreria | WebServices.lib |
DLL | WebServices.dll |