Registrieren von Endpunkten
Durch die Registrierung des Serverprogramms in der Endpunktzuordnung des Serverhostcomputers können Clientprogramme ermitteln, welchen Endpunkt (in der Regel ein TCP/IP-Port oder eine benannte Pipe) das Serverprogramm lauscht. Um sich in der Endpunktzuordnung des Serverhostsystems zu registrieren, ruft ein Serverprogramm die RpcEpRegister-Funktion auf, wie im folgenden Codefragment gezeigt:
// This example assumes that MyInterface_v1_0_s_ifspec is a valid data
// structure that represents the interface being registered. The
// variable is a valid pointer to a binding vector.
RPC_STATUS status;
status = RpcEpRegister(
MyInterface_v1_0_s_ifspec,
rpcBindingVector,
NULL,
NULL);
Der erste Parameter für RpcEpRegister ist die Struktur, die die Schnittstelle darstellt. Sie finden es in der Headerdatei, die der MIDL-Compiler aus Ihrer MIDL-Datei für diese verteilte Anwendung generiert hat. Weitere Informationen finden Sie unter Entwickeln der Schnittstelle. Als Nächstes muss Ihre Anwendung einen Satz von Bindungshandles übergeben, die in einem Bindungsvektor gespeichert sind.
Neben der Registrierung von Schnittstellennamen kann Ihre Serveranwendung auch Objekt-UUIDs in der Endpunktzuordnung registrieren. In diesem Beispiel sind keine Objekt-UUIDs zu registrieren, sodass der dritte Parameter auf RpcEpRegister auf NULL festgelegt ist.
Der letzte Parameter ist eine Kommentarzeichenfolge. Obwohl die RPC-Laufzeitbibliothek diese Zeichenfolge nicht verwendet, wird das Festlegen der Zeichenfolge empfohlen, da dadurch die Verwaltbarkeit des Systems verbessert wird. Ein Systemadministrator kann die Zeichenfolge verwenden, um zu erkennen, welche Ports von welchen Anwendungen verwendet werden, um dann zu bestimmen, welche Ports von Firewalls verwaltet werden sollen.