Freigeben über


RpcNsMgmtBindingUnexportA-Funktion (rpcnsi.h)

Die RpcNsMgmtBindingUnexport Funktion entfernt mehrere Bindungshandles und -objekte aus einem Eintrag in der Namensdienstdatenbank.

Hinweis Diese Funktion wird unter Windows Vista und höheren Betriebssystemen nicht unterstützt.
 

Syntax

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

Parameter

EntryNameSyntax

Syntax des EntryName-.

Um die im Registrierungswerteintrag HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntaxangegebene Syntax zu verwenden, geben Sie einen Wert von RPC_C_NS_SYNTAX_DEFAULT an.

EntryName

Zeigen Sie auf den Namen des Eintrags, aus dem Bindungshandles und Objekt-UUIDs entfernt werden sollen.

IfId

Zeiger auf eine Schnittstellenidentifikation. Ein NULL-Parameterwert gibt an, dass Bindungshandles nicht nicht exportiert werden sollen. Es werden nur Objekt-UUIDs nicht exportiert.

VersOption

Gibt an, wie die funktion RpcNsMgmtBindingUnexport die VersMajor und VersMinor Member der Struktur verwendet, auf die vom IfId Parameter verwiesen wird.

In der folgenden Tabelle werden gültige Werte für den parameter VersOption beschrieben.

VersOption-Werte Bedeutung
RPC_C_VERS_ALL
Hebt alle Bindungen für die UUID der Schnittstelle in IfIdauf, unabhängig von den Versionsnummern. Geben Sie für diesen Wert 0 für die Haupt- und Nebenversionen in IfId-an.
RPC_C_VERS_IF_ID
Hebt die Bindungen für die kompatible Schnittstellen-UUID in IfId mit derselben Hauptversion und einer Nebenversion auf, die größer oder gleich der Nebenversion in IfIdist.
RPC_C_VERS_EXACT
Hebt die Bindungen für die UUID der Schnittstelle in IfId mit den gleichen Haupt- und Nebenversionen wie in IfIdauf.
RPC_C_VERS_MAJOR_ONLY
Hebt die Bindungen für die Schnittstellen-UUID in IfId- mit der gleichen Hauptversion wie in IfId- auf (ignoriert die Nebenversion). Geben Sie für diesen Wert 0 für die Nebenversion in IfId-an.
RPC_C_VERS_UPTO
Hebt die Bindungen auf, die eine Version der angegebenen Schnittstelle UUID kleiner oder gleich der angegebenen Haupt- und Nebenversion bieten. (Wenn beispielsweise die IfId V2.0 enthielt und der Namensdienstdatenbankeintrag Bindungshandles mit den Versionen 1.3, 2.0 und 2.1 enthielt, würde die RpcNsMgmtBindingUnexport-Funktion die Bindungshandles mit den Versionen 1.3 und 2.0 aufheben.)

ObjectUuidVec

Zeigen Sie auf einen Vektor von Objekt-UUIDs, die der Server nicht mehr anbieten möchte. Die Anwendung erstellt diesen Vektor. Ein NULL-Wert gibt an, dass keine Objekt-UUIDs zum Aufheben des Exports vorhanden sind. Nur Bindungshandles sind nichtexportiert.

Rückgabewert

Wert Bedeutung
RPC_S_OK
Der Aufruf war erfolgreich.
RPC_S_INVALID_VERS_OPTION
Die Versionsoption ist ungültig.
RPC_S_INVALID_NAME_SYNTAX
Die Namenssyntax ist ungültig.
RPC_S_UNSUPPORTED_NAME_SYNTAX
Die Namenssyntax wird nicht unterstützt.
RPC_S_INCOMPLETE_NAME
Der Name ist unvollständig.
RPC_S_ENTRY_NOT_FOUND
Der Name-Service-Eintrag wurde nicht gefunden.
RPC_S_NAME_SERVICE_UNAVAILABLE
Der Namensdienst ist nicht verfügbar.
RPC_S_INTERFACE_NOT_FOUND
Die Schnittstelle wurde nicht gefunden.
RPC_S_NOT_ALL_OBJS_UNEXPORTED
Nicht alle Objekte werden nicht exportiert.
 
Hinweis Eine Liste gültiger Fehlercodes finden Sie unter RPC-Rückgabewerte.
 

Bemerkungen

Die funktion RpcNsMgmtBindingUnexport ermöglicht es einer Verwaltungsanwendung, einen der folgenden Elemente aus einem Namensdienst-Datenbankeintrag zu entfernen:

  • Alle Bindungshandles für eine angegebene Schnittstelle UUID, qualifiziert durch die Schnittstellenversionsnummern (Haupt- und Nebenversion)
  • Ein oder mehrere Objekt-UUIDs von Ressourcen
  • Bindungshandles und Objekt-UUIDs von Ressourcen
Eine Verwaltungsanwendung kann Schnittstellen und Objekte in einem einzigen Aufruf von RpcNsMgmtBindingUnexportaufheben oder diese separat aufheben. Wenn RpcNsMgmtBindingUnexport keine Bindungshandles für die angegebene Schnittstelle findet, gibt die Funktion einen RPC_S_INTERFACE_NOT_FOUND Statuscode zurück und hebt den Export der Objekt-UUIDs, falls vorhanden, nicht auf.

Wenn ein oder mehrere Bindungshandles für die angegebene Schnittstelle gefunden und ohne Fehler nichtexportiert werden, RpcNsMgmtBindingUnexport alle angegebenen Objekt-UUIDs nicht exportieren. Wenn eines der angegebenen Objekt-UUIDs nicht gefunden wurde, gibt RpcNsMgmtBindingUnexport RPC_S_NOT_ALL_OBJS_UNEXPORTED zurück.

Zusätzlich zum Aufrufen RpcNsMgmtBindingUnexport-sollte eine Verwaltungsanwendung auch die RpcMgmtEpUnregister-Funktion aufrufen, um die Registrierung der Server aufzuheben, die bei der Endpunktzuordnungsdatenbank registriert sind.

Hinweis Namensdienstdatenbanken relativ stabil sind. Bei replizierten Namensdiensten führt die häufige Verwendung des RpcNsBindingExport- und RpcNsBindingUnexport Funktionen dazu, dass der Namensdienst denselben Eintrag wiederholt entfernt und ersetzt, was zu Leistungsproblemen führen kann.
 

Anmerkung

Der rpcnsi.h-Header definiert RpcNsMgmtBindingUnexport als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- rpcnsi.h (include Rpc.h)
Library Rpcns4.lib
DLL- Rpcns4.dll

Siehe auch

RpcMgmtEpUnregister-

RpcNsBindingExport-

RpcNsBindingUnexport