Freigeben über


StoClien Übersicht

Zweck

Der Hauptfokus des StoClien-Beispiels besteht darin, wie der Client strukturierten Speicher verwendet und wie er eine Serverkomponente anweist, diesen Speicher zu verwenden. Das StoClien-Beispiel veranschaulicht ein Programmiermodell von strukturierten Speicherdiensten.

Funktionalität

Die StoClien-Funktionalität ähnelt den "Scribble"-Beispielen in einigen Versionen von Microsoft Visual C++. Der Unterschied zwischen dem StoClien-Beispiel und dem StoServe-Beispiel ist eine interne Architektur, die auf COM-Technologie basiert. Es wird ein klarer architektonischer Unterschied zwischen COM-Client und COM-Server beibehalten.

StoClien lädt und speichert seine Zeichnungen im strukturierten Speicher von COM-Verbunddateien.

Im StoClien-Beispiel wird das anschließbare COPaper COM-Objekt erstellt und verwendet, das als CLSID_DllPaper Komponente auf dem StoServe-Server bereitgestellt wird. Der StoClien-Client erstellt ein COPaper-Objekt und steuert es über die IPaper-Schnittstelle, die das Objekt verfügbar macht. StoClien ruft Zeichnungsdaten vom Benutzer ab und stellt sie grafisch in einem Fenster dar, das er verwaltet. StoClien verwendet die COPaper-IPaper-Schnittstelle, um die Zeichnungsdaten in COPaper zu speichern und Dateispeichervorgänge für diese Daten zu leiten.

Ein COPaper COM-Objekt kapselt nur die serverbasierte Speicherung der Zeichnungspapierdaten: Auf der Serverseite wird kein Grafisches Benutzeroberflächenverhalten (GUI) bereitgestellt. Das gesamte GUI-Verhalten ist im Client isoliert. Die Datenverwaltungs- und Speicherfeatures von COPaper-Objekten sind nur über die benutzerdefinierte COM-Schnittstelle IPaper verfügbar.

StoClien arbeitet mit dem COPaper zusammen, um die COPaper-Zeichnungsdaten zu laden und zu speichern. StoClien ruft eine IStorage-Schnittstelle für das Speicherobjekt in einer zusammengesetzten Datei ab. In seinen Lade- und Speichervorgängen übergibt StoClien einen Zeiger an die IStorage-Schnittstelle an COPaper auf dem Server. COPaper verwendet den bereitgestellten IStorage , um Streams im Speicher zu erstellen. COPaper kann dann die IStream-Standardschnittstelle zum Lesen und Schreiben der von ihm verwalteten Zeichnungsdaten verwenden.

COPaper verwaltet nur die Zeichnungsdaten; Es führt keine GUI-Aktionen aus. StoClien stellt die GUI für die Zeichnungsanwendung bereit. Dies wird in einem zentralen CGuiPaper C++-Objekt gekapselt.

StoClien implementiert auch die benutzerdefinierte IPaperSink-Schnittstelle in einem COPaperSink-COM-Objekt und verbindet diese Schnittstelle mit einem entsprechenden Verbindungspunkt im COPaper-Serverobjekt. COPaper verwendet die verbundene IPaperSink-Schnittstelle, um Benachrichtigungen zurück an StoClien zu senden. Die normale GUI-Neulackierung der COPaper-Zeichnungsdaten erfolgt in StoClien mithilfe der coPaper Connectable-Objekttechnologie.

StoClien ist eine Anwendung, die Sie direkt auf normale Weise oder über das Eingabeaufforderungsfenster ausführen können. StoClien akzeptiert einen optionalen Dateinamenparameter in der Befehlszeile.

Im folgenden Beispiel ist Drawing.pap eine zusammengesetzte Datei, die DllPaper-kompatible strukturierte Speicherung von Zeichnungsdaten enthält. Wenn kein Befehlszeilendateinameparameter angegeben ist, verwendet StoClien den Standarddateinamen Stoclien.pap und versucht, ihn im selben Verzeichnis wie die ausführende Stoclien.exe zu öffnen.

StoClien c:\drawings\drawing.pap

Supportinformationen

Weitere Informationen, Funktionsbeschreibungen und ein Codetutorial für StoClien finden Sie im Abschnitt Code Tour in Stoclien.htm. Weitere Informationen zum externen Benutzerbetrieb von StoClien finden Sie in den Abschnitten Verwendung und Vorgang in Stoclien.htm. Um Stoclient.htm zu lesen, führen Sie Tutorial.exe im Standard Tutorialverzeichnis aus, und klicken Sie in der Tabelle der Lektionen auf die StoClien-Lektion. Alternativ können Sie auf Stoclien.htm klicken, nachdem Sie das Standard Tutorialverzeichnis in Windows Explorer gesucht haben. Weitere Informationen dazu, wie StoServe funktioniert und seine Dienste für StoClien verfügbar macht, finden Sie unter Stoserve.htm im Standard Tutorialverzeichnis. Beachten Sie, dass Sie die Stoserve.dll erstellen müssen, bevor Sie StoClien erstellen. Die Makefile für StoServe registriert diesen Server in der Systemregistrierung. Daher müssen Sie StoServe erstellen, bevor Sie versuchen, StoClien auszuführen.

Weitere Informationen zum Einrichten eines Systems zum Erstellen und Testen der Codebeispiele in dieser COM-Tutorialreihe finden Sie unter Erstellen von Beispielen. Das bereitgestellte Makefile (MAKEFILE) ist Microsoft NMAKE-kompatibel. Um einen Debugbuild zu erstellen, geben Sie den NMAKE-Befehl im Eingabeaufforderungsfenster aus.

Der Einfachheit halber wird für jedes Beispiel eine Projektdatei zur Verwendung in Microsoft Visual Studio bereitgestellt. Um das Projekt für das StoClien-Beispiel zu laden, führen Sie Visual Studio an der Eingabeaufforderung im Beispielverzeichnis wie folgt aus:

MSDEV STOCLIEN. DSP

Sie können auch in Windows Explorer auf die Datei Stoclient.dsp doppelklicken, um ein Beispielprojekt in Visual Studio zu laden. In Visual Studio können Sie die C++-Klassen der Beispielquelle durchsuchen und im Allgemeinen die anderen Edit-Compile-Debug-Vorgänge ausführen. Beachten Sie, dass die Kompilierung dieser Beispiele in Visual Studio als Teil des Server SDK die richtige Einstellung der Verzeichnispfade in Visual Studio erfordert. Weitere Informationen finden Sie unter Erstellen von Beispielen.

Bemerkungen

Das Clientbeispiel und andere verwandte Beispiele müssen kompiliert werden, bevor Sie den Client ausführen können. Weitere Informationen zum Erstellen der Beispiele finden Sie unter Erstellen von Beispielen. Wenn Sie die entsprechenden Beispiele erstellt haben, ist Stoclien.exe die ausführbare Clientdatei für dieses Beispiel.

Die Stoclien.exe-Anwendung stellt die Benutzeroberfläche für dieses Tutorial bereit. Es übt die zugeordneten, aber unabhängigen Stoserve.dll aus, um sowohl die Client- als auch die Serververwendung von strukturiertem COM-Speicher in zusammengesetzten Dateien zu veranschaulichen.