Entwickeln des Clients
Die Entwicklung eines RPC-Clientprogramms ähnelt der Entwicklung des Serverprogramms. Informationen zum Entwickeln eines RPC-Serverprogramms finden Sie unter Entwickeln des Servers.
Wie bei der Serverentwicklung muss Ihr Clientprogramm die Headerdatei enthalten, die der MIDL-Compiler aus Ihrer IDL-Datei generiert. Der MIDL-Compiler generiert auch eine C-Quelldatei, die den Client-Stub enthält. Sie müssen diese C-Quelldatei kompilieren und mit Ihrem Clientprogramm verknüpfen. (Darüber hinaus generiert der MIDL-Compiler eine C-Quelldatei, die den Serverstub enthält, aber dies ist für diese Diskussion nicht relevant.)
Zusätzlich zum Kompilieren und Verknüpfen des Client-Stubs mit Ihren Programmdateien müssen Sie die Importbibliothek (und alle anderen Bibliotheken, die Ihr Clientprogramm benötigt) mit Ihrem Clientprogramm verknüpfen. Der Prozess zum Erstellen eines RPC-Clientprogramms wird im folgenden Diagramm veranschaulicht.
Das Beispiel in der vorherigen Abbildung veranschaulicht die Erstellung eines RPC-Clientprogramms namens MyClnt.exe. Der erste Schritt besteht darin, die Schnittstelle in der Datei MyApp.idl zu definieren. Der MIDL-Compiler generiert mithilfe von MyApp.idl die Datei MyApp_c.c, die den Clientstub enthält. Außerdem wird die Datei MyApp.h generiert, die das Clientprogramm enthalten muss. Das Clientprogramm muss auch die Dateien RPC.h und RPCNDR.h enthalten.
Das Clientprogramm selbst wird in der Datei MyClnt.c erstellt. In einem realen Projekt besteht das Clientprogramm in der Regel aus mehreren C-Quelldateien. Alle müssten zusammengestellt und miteinander verknüpft werden. In diesem Beispiel wird der Einfachheit halber jedoch nur eine Datei verwendet.
Die Dateien MyClnt.c und MyApp_c.c werden kompiliert und mit der RPC-Laufzeitbibliothek und allen anderen Bibliotheken verknüpft, die das Clientprogramm benötigt. Das Ergebnis ist ein ausführbares Clientprogramm namens MyClnt.exe.
Wenn Sie Ihre IDL-Datei nicht im OSF-Kompatibilitätsmodus (/osf) kompilieren, muss Ihr Clientprogramm eine Funktion zum Zuweisen von Arbeitsspeicher und eine Funktion zum Verwalten der Zuordnung bereitstellen. Für Windows 2000 und höhere Versionen ist der empfohlene Modus /Oicf. Ausführliche Informationen finden Sie unter Zuweisung und Zuordnung von Arbeitsspeicher sowie Zeiger und Speicherzuordnung.