Partager via


Fonction RpcBindingCreateA (rpcdce.h)

La fonction RpcBindingCreate crée un nouveau handle de liaison RPC rapide basé sur un modèle fourni.

Syntaxe

RPC_STATUS RpcBindingCreateA(
  [in]           RPC_BINDING_HANDLE_TEMPLATE_V1_A *Template,
  [in, optional] RPC_BINDING_HANDLE_SECURITY_V1_A *Security,
  [in, optional] RPC_BINDING_HANDLE_OPTIONS_V1    *Options,
  [out]          RPC_BINDING_HANDLE               *Binding
);

Paramètres

[in] Template

RPC_BINDING_HANDLE_TEMPLATE structure qui décrit le handle de liaison à créer par cet appel. Ces données peuvent être remplacées pendant l’appel, de sorte que l’API ne conserve pas de référence à ces données. L’appelant doit libérer la mémoire utilisée par cette structure lorsque l’API retourne.

[in, optional] Security

RPC_BINDING_HANDLE_SECURITY structure qui décrit les options de sécurité pour ce handle de liaison. Ces données peuvent être remplacées pendant l’appel, de sorte que l’API ne conserve pas de référence à ces données. L’appelant doit libérer la mémoire utilisée par cette structure lorsque l’API retourne.

Ce paramètre est facultatif. Si ce paramètre est défini sur NULL, les paramètres de sécurité par défaut pour RPC_BINDING_HANDLE_SECURITY sont utilisés.

[in, optional] Options

RPC_BINDING_HANDLE_OPTIONS structure qui décrit des options supplémentaires pour le handle de liaison. Ces données peuvent être remplacées pendant l’appel, de sorte que l’API ne conserve pas de référence à ces données. L’appelant doit libérer la mémoire utilisée par cette structure lorsque l’API retourne.

Ce paramètre est facultatif. Si ce paramètre a la valeur NULL, les options par défaut pour RPC_BINDING_HANDLE_OPTIONS sont utilisées.

[out] Binding

RPC_BINDING_HANDLE structure qui contient le handle de liaison nouvellement créé. Si cette fonction n’a pas retourné RPC_S_OK, le contenu de cette structure n’est pas défini. Pour les appels RPC non locaux, ce handle doit être passé à RpcBindingBind.

Valeur retournée

Cette fonction retourne RPC_S_OK en cas de réussite ; sinon, un code d’erreur RPC_S_* est retourné. Pour plus d’informations sur ces codes d’erreur, consultez Valeurs de retour RPC.

Code de retour Description
RPC_S_OK
Le handle de liaison a été créé avec succès.
RPC_S_CANNOT_SUPPORT
Une fonctionnalité obsolète de RPC a été demandée pour ce handle de liaison.
Note Les seules séquences de protocole prises en charge pour cette API sont ncalrpc ; Le choix d’une autre séquence de protocole entraîne le retour de cette erreur status code.
 
 
Note Pour obtenir la liste des codes d’erreur valides, consultez Valeurs de retour RPC.
 

Remarques

Le handle de liaison RPC retourné par cette API peut être utilisé avec toutes les autres fonctions qui acceptent un handle de liaison en tant que paramètre.

Toutefois, avant que des appels puissent être effectués sur le handle de liaison, RpcBindingBind doit être appelé pour rendre le handle de liaison disponible pour les appels distants. L’API RpcBindingCreate ne touche pas le réseau ou ne tente pas de communiquer avec le serveur RPC. Elle génère simplement une structure de données interne basée sur les valeurs fournies dans le modèle. Un retour réussi n’indique pas que le serveur RPC est disponible, accessible ou spécifié correctement.

Notes

L’en-tête rpcdce.h définit RpcBindingCreate comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête rpcdce.h (inclure Rpc.h)
Bibliothèque Rpcrt4.lib
DLL Rpcrt4.dll

Voir aussi

RPC_BINDING_HANDLE

RpcBindingBind