Inscription des points de terminaison
L’inscription du programme serveur dans le mappage des points de terminaison de l’ordinateur hôte du serveur permet aux programmes clients de déterminer quel point de terminaison (généralement un port TCP/IP ou un canal nommé) le programme serveur écoute. Pour s’inscrire dans le mappage du point de terminaison du système hôte du serveur, un programme serveur appelle la fonction RpcEpRegister , comme indiqué dans le fragment de code suivant :
// This example assumes that MyInterface_v1_0_s_ifspec is a valid data
// structure that represents the interface being registered. The
// variable is a valid pointer to a binding vector.
RPC_STATUS status;
status = RpcEpRegister(
MyInterface_v1_0_s_ifspec,
rpcBindingVector,
NULL,
NULL);
Le premier paramètre de RpcEpRegister est la structure qui représente l’interface. Vous pouvez le trouver dans le fichier d’en-tête que le compilateur MIDL a généré à partir de votre fichier MIDL pour cette application distribuée. Consultez Développement de l’interface. Ensuite, RpcEpRegister a besoin que votre application passe un ensemble de handles de liaison stockés dans un vecteur de liaison.
En plus d’inscrire des noms d’interface, votre application serveur peut également inscrire des UUID d’objets dans la carte de point de terminaison. Dans cet exemple, il n’y a pas d’UUID d’objet à inscrire. Par conséquent, le troisième paramètre de RpcEpRegister est défini sur NULL.
Le dernier paramètre est une chaîne de commentaire. Bien que la bibliothèque d’exécution RPC n’utilise pas cette chaîne, il est recommandé de définir la chaîne, car elle améliore la facilité de gestion du système. Un administrateur système peut utiliser la chaîne pour détecter les ports utilisés par les applications, qui peuvent ensuite être utilisés pour déterminer les ports à gérer par les pare-feu.