Partager via


structure RPC_ENDPOINT_TEMPLATEA (rpcdce.h)

La structure RPC_ENDPOINT_TEMPLATE spécifie les propriétés d’un point de terminaison de serveur de groupe d’interface RPC, y compris la séquence de protocole et le nom.

Syntaxe

typedef struct {
  unsigned long Version;
  RPC_CSTR      ProtSeq;
  RPC_CSTR      Endpoint;
  void          *SecurityDescriptor;
  unsigned long Backlog;
} RPC_ENDPOINT_TEMPLATEA, *PRPC_ENDPOINT_TEMPLATEA;

Membres

Version

Ce champ est réservé et doit être défini sur 0.

ProtSeq

Pointeur vers un identificateur de chaîne de la séquence de protocole à inscrire auprès de la bibliothèque d’exécution RPC. Seuls ncalrpc, ncacn_ip_tcp et ncacn_np sont pris en charge. Cette valeur ne doit pas être NULL.

Endpoint

Pointeur facultatif vers les informations d’adresse de point de terminaison à utiliser pour créer une liaison pour la séquence de protocole spécifiée dans le paramètre Protseq. Spécifiez NULL pour utiliser des points de terminaison dynamiques.

SecurityDescriptor

Pointeur vers un paramètre facultatif fourni pour le sous-système de sécurité. Utilisé uniquement pour les séquences de protocole ncacn_np et ncalrpc. Toutes les autres séquences de protocole ignorent ce paramètre. L’utilisation d’un descripteur de sécurité sur le point de terminaison pour sécuriser un serveur n’est pas recommandée.

Backlog

Longueur de file d’attente du backlog pour la séquence de protocole ncacn_ip_tcp. Toutes les autres séquences de protocole ignorent ce paramètre. Utilisez RPC_C_PROTSEQ_MAX_REQS_DEFAULT pour spécifier la valeur par défaut. Pour plus d’informations, consultez les remarques.

Remarques

La valeur fournie dans Backlog par les applications n’est qu’un indicateur. L’heure d’exécution RPC ou le fournisseur Windows Sockets peut remplacer la valeur. Par exemple, sur Windows XP ou Windows 2000 Professionnel, la valeur est limitée à 5. Les valeurs supérieures à 5 sont ignorées et 5 sont utilisées à la place. Sur Windows Server 2003 et Windows 2000 Server, la valeur sera respectée.

Les applications doivent faire attention à passer des valeurs raisonnables dans backlog. Les valeurs volumineuses sur le serveur, le serveur avancé ou le serveur de centre de données peuvent entraîner l’utilisation d’une grande quantité de mémoire de pool non paginée. L’utilisation d’une valeur trop petite est également défavorable, car cela peut entraîner la mise en place de paquets TCP SYN rencontrés par TCP RST à partir du serveur si la file d’attente du backlog est épuisée.

Un développeur d’applications doit équilibrer l’empreinte mémoire et les exigences d’extensibilité lors de la détermination de la valeur appropriée pour Backlog.

Note

L’en-tête rpcdce.h définit RPC_ENDPOINT_TEMPLATE en tant qu’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.

Exigences

Exigence Valeur
client minimum pris en charge Windows 8 [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2012 [applications de bureau uniquement]
d’en-tête rpcdce.h (inclure Rpc.h)

Voir aussi

RpcServerInqBindings