Partager via


Fonction RpcNsMgmtBindingUnexportA (rpcnsi.h)

La fonction RpcNsMgmtBindingUnexport supprime plusieurs handles de liaison et objets d’une entrée dans la base de données name-service.

Note Cette fonction n’est pas prise en charge sur Windows Vista et les systèmes d’exploitation ultérieurs.
 

Syntaxe

RPC_STATUS RpcNsMgmtBindingUnexportA(
  unsigned long EntryNameSyntax,
  RPC_CSTR      EntryName,
  RPC_IF_ID     *IfId,
  unsigned long VersOption,
  UUID_VECTOR   *ObjectUuidVec
);

Paramètres

EntryNameSyntax

Syntaxe de EntryName.

Pour utiliser la syntaxe spécifiée dans l’entrée de valeur de Registre HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax, fournissez une valeur de RPC_C_NS_SYNTAX_DEFAULT.

EntryName

Pointeur vers le nom de l’entrée à partir de laquelle supprimer les handles de liaison et les UUID d’objet.

IfId

Pointeur vers une identification d’interface. Une valeur de paramètre null indique que les handles de liaison ne doivent pas être non exportés, mais que seuls les UUID d’objet doivent être non exportés.

VersOption

Spécifie la façon dont la fonction RpcNsMgmtBindingUnexport utilise les membres VersMajor et VersMinor de la structure pointée vers le paramètre IfId .

Le tableau suivant décrit les valeurs valides pour le paramètre VersOption .

Valeurs VersOption Signification
RPC_C_VERS_ALL
Annule l’exportation de toutes les liaisons pour l’UUID d’interface dans IfId, quels que soient les numéros de version. Pour cette valeur, spécifiez 0 pour les versions principale et mineure dans IfId.
RPC_C_VERS_IF_ID
Annule l’exportation des liaisons pour l’UUID d’interface compatible dans IfId avec la même version majeure et avec une version mineure supérieure ou égale à la version mineure dans IfId.
RPC_C_VERS_EXACT
Annule l’exportation des liaisons pour l’UUID d’interface dans IfId avec les mêmes versions principales et mineures que dans IfId.
RPC_C_VERS_MAJOR_ONLY
Annule l’exportation des liaisons pour l’UUID d’interface dans IfId avec la même version majeure que dans IfId (ignore la version mineure). Pour cette valeur, spécifiez 0 pour la version mineure dans IfId.
RPC_C_VERS_UPTO
Annule l’exportation des liaisons qui offrent une version de l’UUID d’interface spécifiée inférieure ou égale à la version principale et secondaire spécifiée. (Par exemple, si l’IfId contenait V2.0 et que l’entrée de base de données de service de nom contenait des handles de liaison avec les versions 1.3, 2.0 et 2.1, la fonction RpcNsMgmtBindingUnexport désexporterait les handles de liaison avec les versions 1.3 et 2.0.)

ObjectUuidVec

Pointeur vers un vecteur d’UUID d’objet que le serveur ne souhaite plus offrir. L’application construit ce vecteur. Une valeur null indique qu’il n’y a pas d’UUID d’objet à annuler. Seuls les handles de liaison doivent être non exportés.

Valeur retournée

Valeur Signification
RPC_S_OK
L’appel a réussi.
RPC_S_INVALID_VERS_OPTION
Option de version non valide.
RPC_S_INVALID_NAME_SYNTAX
La syntaxe de nom n’est pas valide.
RPC_S_UNSUPPORTED_NAME_SYNTAX
La syntaxe de nom n’est pas prise en charge.
RPC_S_INCOMPLETE_NAME
Le nom est incomplet.
RPC_S_ENTRY_NOT_FOUND
L’entrée name-service est introuvable.
RPC_S_NAME_SERVICE_UNAVAILABLE
Nom de service indisponible.
RPC_S_INTERFACE_NOT_FOUND
L’interface est introuvable.
RPC_S_NOT_ALL_OBJS_UNEXPORTED
Tous les objets non exportés.
 
Note Pour obtenir la liste des codes d’erreur valides, consultez Valeurs de retour RPC.
 

Remarques

La fonction RpcNsMgmtBindingUnexport permet à une application de gestion de supprimer l’un des éléments suivants d’une entrée de base de données de service de nom :

  • Tous les handles de liaison pour un UUID d’interface spécifié, qualifiés par les numéros de version de l’interface (majeur et mineur)
  • Un ou plusieurs UUID d’objet de ressources
  • Les handles de liaison et les UUID d’objet des ressources
Une application de gestion peut annuler l’exportation d’interfaces et d’objets dans un seul appel à RpcNsMgmtBindingUnexport ou les annuler séparément. Si RpcNsMgmtBindingUnexport ne trouve pas de handles de liaison pour l’interface spécifiée, la fonction retourne un code RPC_S_INTERFACE_NOT_FOUND status et n’annule pas l’exportation des UUID d’objet, le cas échéant.

Si un ou plusieurs handles de liaison pour l’interface spécifiée sont trouvés et non exportés sans erreur, RpcNsMgmtBindingUnexport annule l’exportation des UUID d’objet spécifiés. Si l’un des UUID d’objet spécifié n’a pas été trouvé, RpcNsMgmtBindingUnexport retourne RPC_S_NOT_ALL_OBJS_UNEXPORTED.

En plus d’appeler RpcNsMgmtBindingUnexport, une application de gestion doit également appeler la fonction RpcMgmtEpUnregister pour annuler l’inscription des serveurs inscrits auprès de la base de données endpoint-map.

Note Les bases de données de service de noms sont conçues pour être relativement stables. Dans les services de noms répliqués, l’utilisation fréquente des fonctions RpcNsBindingExport et RpcNsBindingUnexport entraîne la suppression et le remplacement répétés du service de noms, ce qui peut entraîner des problèmes de performances.
 

Notes

L’en-tête rpcnsi.h définit RpcNsMgmtBindingUnexport 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 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête rpcnsi.h (inclure Rpc.h)
Bibliothèque Rpcns4.lib
DLL Rpcns4.dll

Voir aussi

RpcMgmtEpUnregister

RpcNsBindingExport

RpcNsBindingUnexport