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 |
---|---|
|
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) |