RPC_BINDING_HANDLE_TEMPLATE_V1_A-Struktur (rpcdce.h)

Die RPC_BINDING_HANDLE_TEMPLATE_V1-Struktur enthält die grundlegenden Optionen zum Erstellen eines RPC-Bindungshandles.

Syntax

typedef struct _RPC_BINDING_HANDLE_TEMPLATE_V1_A {
  unsigned long Version;
  unsigned long Flags;
  unsigned long ProtocolSequence;
  unsigned char *NetworkAddress;
  unsigned char *StringEndpoint;
  union {
    unsigned char *Reserved;
  } u1;
  UUID          ObjectUuid;
} RPC_BINDING_HANDLE_TEMPLATE_V1_A, *PRPC_BINDING_HANDLE_TEMPLATE_V1_A;

Member

Version

Die Version dieser Struktur. Für RPC_BINDING_HANDLE_TEMPLATE_V1 muss dies auf 1 festgelegt werden.

Flags

Flagwerte, die bestimmte Eigenschaften der RPC-Vorlage beschreiben.

Wert Bedeutung
RPC_BHT_OBJECT_UUID_VALID
Das ObjectUuid-Element enthält einen gültigen Wert. Wenn dieses Flag nicht festgelegt ist, enthält das ObjectUuid-Element keine gültige UUID.

ProtocolSequence

Eine Protokollsequenz-ID, die diesem Bindungshandle zugeordnet ist. Dieses Argument einen der folgenden Werte annehmen.

  • RPC_PROTSEQ_LRPC : Gibt lokale RPC an.
  • RPC_PROTSEQ_TCP : Gibt RPC über TCP/IP an.
  • RPC_PROTSEQ_NMP : Gibt RPC über Named Pipes an.
  • RPC_PROTSEQ_HTTP : Gibt RPC über HTTP an.

NetworkAddress

Zeiger auf eine Zeichenfolgendarstellung der Netzwerkadresse, an die gebunden werden soll.

StringEndpoint

Zeiger auf eine Zeichenfolgendarstellung des Endpunkts, an den gebunden werden soll. Wenn ein dynamischer Endpunkt verwendet wird, legen Sie diesen Member auf NULL fest. Nachdem der Endpunkt aufgelöst wurde, verwenden Sie RpcBindingToStringBinding , um ihn abzurufen.

u1

u1.Reserved

Reserviert. Dieses Element muss auf NULL festgelegt werden.

ObjectUuid

Die UUID des Remoteobjekts. Die Semantik für diese UUID ist identisch mit der für eine Zeichenfolgenbindung. Nachdem das Bindungshandle erstellt wurde, rufen Sie RpcBindingSetObject auf, um die UUID nach Bedarf zu ändern.

Hinweise

Schnelle Bindungshandles unterscheiden sich geringfügig von "klassischen" Bindungshandles in der Art und Weise, wie sie bei Aufrufen von RpcBindingReset behandelt werden. RpcBindingReset ist ein No-Op-Aufruf für statische schnelle Bindungshandles. Bei klassischen Bindungshandles konvertiert RpcBindingReset jedoch ein statisches Bindungshandle in ein dynamisches, um die Abwärtskompatibilität zu erhalten.

Die folgende Tabelle veranschaulicht das Verhalten statischer und dynamischer Bindungshandles in Bezug auf RpcBindingReset und RpcEpResolveBinding.

Endpunkttyp statischen Dynamisch
Bindungshandletyp Schnell Klassisch Schnell Klassisch
RpcBindingReset No-Op Konvertiert in dynamisch Entfernt den aufgelösten Endpunkt, falls ein Endpunkt vorhanden ist Entfernt den aufgelösten Endpunkt, falls ein Endpunkt vorhanden ist
RpcEpResolveBinding No-Op No-Op Löst den Endpunkt auf, wenn er zuvor nicht aufgelöst wurde. Löst den Endpunkt auf, wenn er zuvor nicht aufgelöst wurde.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Kopfzeile rpcdce.h (include Rpc.h)

Weitere Informationen

RPC_BINDING_HANDLE

RpcBindingBind

RpcBindingCreate