WsOpenServiceProxy, fonction (webservices.h)

Ouvre un proxy de service sur un point de terminaison de service.

En cas de réussite, les applications clientes peuvent effectuer des appels à l’aide du proxy de service. Le comportement de WsOpenServiceProxy est régi par la liaison de canal utilisée.

Syntaxe

HRESULT WsOpenServiceProxy(
  [in]           WS_SERVICE_PROXY          *serviceProxy,
  [in]           const WS_ENDPOINT_ADDRESS *address,
  [in, optional] const WS_ASYNC_CONTEXT    *asyncContext,
  [in, optional] WS_ERROR                  *error
);

Paramètres

[in] serviceProxy

Pointeur vers le proxy de service à ouvrir. Le pointeur doit référencer un objet WS_SERVICE_PROXY valide et la valeur référencée ne peut pas être NULL.

[in] address

Pointeur vers l’adresse du point de terminaison.

[in, optional] asyncContext

Pointeur vers un objet WS_ASYNC_CONTEXT qui contient des informations sur la façon d’appeler la fonction de manière asynchrone. La valeur est définie sur NULL en cas d’appel 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'opération a été abandonnée.
WS_E_INVALID_OPERATION
L’opération n’est pas autorisée en raison de l’état actuel de l’objet.
WS_E_ENDPOINT_NOT_FOUND
Le point de terminaison distant n’existe pas ou n’a pas pu être localisé.
WS_E_ENDPOINT_ACCESS_DENIED
L’accès a été refusé par le point de terminaison distant.
WS_E_ENDPOINT_DISCONNECTED
La connexion avec le point de terminaison distant a été interrompue.
WS_E_ENDPOINT_FAILURE
Le point de terminaison distant n’a pas pu traiter la demande.
WS_E_ENDPOINT_NOT_AVAILABLE
Le point de terminaison distant n’est actuellement pas en service à cet emplacement.
WS_E_ENDPOINT_TOO_BUSY
Le point de terminaison distant ne peut pas traiter la demande en raison d’une surcharge.
WS_E_ENDPOINT_UNREACHABLE
Le point de terminaison distant n’était pas accessible.
WS_E_INVALID_ENDPOINT_URL
L’URL de l’adresse du point de terminaison n’est pas valide.
WS_E_INVALID_FORMAT
Les données d’entrée n’étaient pas au format attendu ou n’avaient pas la valeur attendue.
WS_E_OPERATION_TIMED_OUT
L’opération ne s’est pas terminée dans le délai imparti.
WS_E_PROXY_ACCESS_DENIED
L’accès a été refusé par le serveur proxy HTTP.
WS_E_PROXY_FAILURE
Le serveur proxy HTTP n’a pas pu traiter la requête.
WS_E_QUOTA_EXCEEDED
Un quota a été dépassé.
WS_E_SECURITY_VERIFICATION_FAILURE
La vérification de sécurité n’a pas réussi pour les données reçues.
WS_E_SECURITY_SYSTEM_FAILURE
Une opération de sécurité a échoué dans l’infrastructure des services Web Windows.
WS_E_PROXY_REQUIRES_BASIC_AUTH
Le serveur proxy HTTP nécessite le schéma d’authentification HTTP « de base ».
WS_E_PROXY_REQUIRES_DIGEST_AUTH
Le serveur proxy HTTP nécessite le schéma d’authentification HTTP « digest ».
WS_E_PROXY_REQUIRES_NEGOTIATE_AUTH
Le serveur proxy HTTP nécessite le schéma d’authentification HTTP « negotiate ».
WS_E_PROXY_REQUIRES_NTLM_AUTH
Le serveur proxy HTTP nécessite le schéma d’authentification HTTP « NTLM ».
WS_E_SERVER_REQUIRES_BASIC_AUTH
Le point de terminaison distant nécessite le schéma d’authentification HTTP « de base ».
WS_E_SERVER_REQUIRES_DIGEST_AUTH
Le point de terminaison distant nécessite le schéma d’authentification HTTP « digest ».
WS_E_SERVER_REQUIRES_NEGOTIATE_AUTH
Le point de terminaison distant nécessite le schéma d’authentification HTTP « negotiate ».
WS_E_SERVER_REQUIRES_NTLM_AUTH
Le point de terminaison distant nécessite le schéma d’authentification HTTP « NTLM ».
E_OUTOFMEMORY
Mémoire insuffisante.
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.
Autres erreurs
Cette fonction peut retourner d’autres erreurs non répertoriées ci-dessus.

Configuration requise

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