RpcEpResolveBinding-Funktion (rpcdce.h)

Die RpcEpResolveBinding-Funktion löst ein teilweise gebundenes Serverbindungshandle in ein vollständig gebundenes Serverbindungshandle auf.

Syntax

RPC_STATUS RpcEpResolveBinding(
  RPC_BINDING_HANDLE Binding,
  RPC_IF_HANDLE      IfSpec
);

Parameter

Binding

Teilweise gebundenes Serverbindungshandle, das in ein vollständig gebundenes Serverbindungshandle aufgelöst werden soll.

IfSpec

Stub-generierte Struktur, die die interessierende Schnittstelle angibt.

Rückgabewert

Wert Bedeutung
RPC_S_OK
Der Aufruf war erfolgreich.
RPC_S_INVALID_BINDING
Das Bindungshandle war ungültig.
RPC_S_WRONG_KIND_OF_BINDING
Dies war die falsche Art der Bindung für den Vorgang.
 
Hinweis Eine Liste der gültigen Fehlercodes finden Sie unter RPC-Rückgabewerte.
 

Hinweise

Eine Anwendung ruft die RpcEpResolveBinding-Funktion auf, um ein teilweise gebundenes Serverbindungshandle in ein vollständig gebundenes Bindungshandle aufzulösen.

Das Auflösen von Bindungshandles erfordert eine Schnittstellen-UUID und eine Objekt-UUID (die null sein kann). Die RPC-Laufzeitbibliothek fordert den Endpunktzuordnungsdienst auf dem durch den Binding-Parameter angegebenen Host auf, einen Endpunkt für einen kompatiblen Server instance zu suchen. Um den Endpunkt zu finden, sucht der Endpunktzuordnungsdienst in der Endpunktzuordnungsdatenbank nach der Schnittstellen-UUID im IfSpec-Parameter und ggf. nach der Objekt-UUID im Binding-Parameter .

Wie der Auflösungsbindungsvorgang funktioniert, hängt davon ab, ob das angegebene Bindungshandle teilweise oder vollständig gebunden ist. Wenn der Client ein teilweise gebundenes Handle angibt, hat der Auflösungsbindungsvorgang die folgenden möglichen Ergebnisse:

  • Wenn keine kompatiblen Serverinstanzen in der Endpunktzuordnungsdatenbank registriert sind, gibt der Vorgang zur Auflösungsbindung den EPT_S_NOT_REGISTERED status Code zurück.
  • Wenn ein kompatibler Server instance in der Datenbank endpoint-map registriert ist, gibt der Auflösungsbindungsvorgang eine vollständig gebundene Bindung und den RPC_S_OK status Code zurück.
Wenn der Client ein vollständig gebundenes Bindungshandle angibt, gibt der Auflösungsbindungsvorgang das angegebene Bindungshandle und den RPC_S_OK status Code zurück. Der Vorgang zum Auflösen der Bindung kontaktiert den Endpunktzuordnungsdienst nicht.

Weder im teilweisen noch im vollständig gebundenen Bindungsfall kontaktiert der Auflösungsbindungsvorgang einen kompatiblen Server instance.

Hinweis Das Aufrufen von RpcEpResolveBinding ist nicht unbedingt erforderlich. Wenn ein RPC-Aufruf für ein teilweise gebundenes Serverbindungshandle erfolgt, werden bei der RPC-Laufzeit die erforderlichen Schritte ausgeführt, um die Bindung zu einem vollständig gebundenen Bindungshandle zu machen. Die RPC-Laufzeit ruft RpcEpResolveBinding auf, aber dies ist aufgrund zusätzlicher Zwischenspeicherungstechniken effizienter. In Windows XP und Windows 2000 haben Anwendungen keinen Grund, RpcEpResolveBinding aufzurufen.
 

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile rpcdce.h (rpc.h einschließen)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll

Weitere Informationen

RpcBindingFromStringBinding

RpcBindingReset

RpcEpRegister

RpcEpRegisterNoReplace

RpcNsBindingImportBegin

RpcNsBindingImportDone

RpcNsBindingImportNext