Fonction WsOpenListener (webservices.h)

Lance l'« écoute » sur une adresse spécifiée. Une fois qu’un écouteur est ouvert, les canaux peuvent être acceptés à partir de celui-ci. Si l’ouverture réussit, l’écouteur doit être fermé à l’aide de la fonction WsCloseListener pour que les ressources de l’écouteur puissent être libérées.

Syntaxe

HRESULT WsOpenListener(
  [in]           WS_LISTENER            *listener,
  [in]           const WS_STRING        *url,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

Paramètres

[in] listener

Pointeur vers l’objet Listener à ouvrir. Le pointeur doit référencer un objet WS_LISTENER valide et la valeur référencée peut ne pas être NULL.

[in] url

Pointeur vers un objet contenant la chaîne d’adresse URL de l’écouteur.

Note L’URL est toujours sous forme d’échappement.. L’URL peut ne pas contenir de chaîne de requête ou de fragment. Cette URL peut inclure les caractères génériques « + » ou « * » dans la partie du nom d’hôte, un nom d’hôte ou une adresse IP littérale. Pour plus d’informations sur l’URL, consultez Remarques.
 

[in, optional] asyncContext

Pointeur vers un objet WS_ASYNC_CONTEXT qui contient des informations sur l’appel de la fonction de manière asynchrone. La valeur est définie sur NULL si l’appel est synchrone.

[in, optional] error

Pointeur vers un objet WS_ERROR où des informations supplémentaires sur l’erreur doivent être stockées en cas d’échec de la fonction.

Valeur retournée

Cette fonction peut retourner l’une de ces valeurs.

Code de retour Description
WS_S_ASYNC
L’opération asynchrone est toujours en attente.
WS_E_OPERATION_ABORTED
L’écouteur a été abandonné pendant l’ouverture ou avant l’ouverture.
WS_E_INVALID_OPERATION
L’écouteur est dans un état incorrect.
WS_E_ADDRESS_IN_USE
L’adresse est déjà utilisée.
WS_E_ADDRESS_NOT_AVAILABLE
L’adresse n’est pas valide pour ce contexte.
WS_E_QUOTA_EXCEEDED
Un quota a été dépassé.
WS_E_OPERATION_ABORTED
L'opération a été abandonnée.
WS_E_OPERATION_TIMED_OUT
L’opération ne s’est pas terminée dans le délai imparti.
E_OUTOFMEMORY
Nous avons manqué de mémoire.
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.
Autres erreurs
Cette fonction peut renvoyer d’autres erreurs non répertoriées ci-dessus.

Remarques

Lorsque vous utilisez des adresses IPv6, elles doivent être placées entre crochets dans la partie du nom d’hôte.

Pour plus d’informations, consultez WS_HTTP_CHANNEL_BINDING.

Par WS_UDP_CHANNEL_BINDING, la partie chemin d’accès de l’URL est ignorée. Si une adresse IP littérale est spécifiée, elle est utilisée pour écouter, sinon une adresse IP générique est utilisée.

Par WS_TCP_CHANNEL_BINDING, la partie chemin d’accès de l’URL est mise en correspondance en tant que préfixe par rapport à l’URL reçue.
Si une adresse IP littérale est spécifiée, elle est utilisée pour écouter, sinon une adresse IP générique est utilisée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête webservices.h
Bibliothèque WebServices.lib
DLL WebServices.dll