Freigeben über


Registrieren der Schnittstelle

Durch das Registrieren der Schnittstelle, die ein Serverprogramm unterstützt, können Remoteprozeduraufrufe von Clientprogrammen an die richtige Serverroutine verteilt werden. Serverprogramme rufen RpcServerRegisterIf auf, um ihre Schnittstellen zu registrieren. Das folgende Codefragment veranschaulicht die Verwendung:

RPC_STATUS status;
status = RpcServerRegisterIf(MyInterface_v1_0_s_ifspec, NULL, NULL);

Der erste Parameter für die funktion RpcServerRegisterIf ist eine Struktur, die der MIDL-Compiler aus der IDL-Datei generiert, die die Schnittstelle (oder Schnittstellen) für den Server definiert. Die zweiten und dritten Parameter sind eine UUID bzw. ein Einstiegspunktvektor. Sie werden in diesem Beispiel auf NULL- festgelegt. In vielen Fällen legt Ihr Serverprogramm diese Parameterwerte auf NULL-fest. Serverprogramme verwenden die zweiten und dritten Parameter, wenn sie mehrere Implementierungen derselben Prozeduren in einer Schnittstelle bereitstellen. Weitere Informationen finden Sie unter Entry-Point Vectors.

Serverprogramme können auch RpcServerRegisterIfEx- verwenden, um eine Schnittstelle zu registrieren. Ein Vorteil der Verwendung dieser Funktion besteht darin, dass ihre Anwendung die Möglichkeit bietet, eine Sicherheitsrückruffunktion festzulegen. Die Verwendung von Sicherheitsrückruffunktionen ist der empfohlene Ansatz zum Sichern einer Schnittstelle.

Anmerkung

MIDL erzeugt zwei sehr ähnliche Strukturen, eine für den Client und eine für den Server. Die an die RpcServerRegisterIf-Funktion übergebene Struktur ist die Serverversion der von MIDL erzeugten Struktur.