OLE-Konzepte und Anforderungsübersicht

Veralteter Haftungsausschluss für KB-Inhalte

Dieser Artikel wurde für Produkte geschrieben, für die Microsoft keinen Support mehr anbietet. Deshalb wird dieser Artikel im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.

Zusammenfassung

OLE ist eine Technologie, mit der Anwendung verknüpfte Dokumente erstellen, die Informationen aus anderen Quellen enthalten, kann. Z. B. kann ein Dokument in einem OLE-fähigen Textverarbeitungsprogramm eingebettete Tabellenobjekte akzeptieren. Eingebettete Dokumente behalten im Gegensatz zu herkömmlichen "Ausschneiden und Einfügen", in dem die empfangende Anwendung das Format der eingefügten Informationen ändert, die ursprünglichen Eigenschaften. Wenn der Benutzer die eingebetteten Daten bearbeitet, aktiviert Windows die ursprüngliche Anwendung und lädt das eingebettete Dokument.

Dieser Artikel bietet eine Übersicht über die OLE-Bibliotheken; Beschreibt die Datenstruktur VTBL (virtuellen Methodentabelle) ein erforderliches Element jeder OLE-Anwendung ist; und über die Zwischenablage in eine OLE-Anwendung.

Weitere Informationen

OLECLI. DLL - OLE-Clientbibliothek

OLECLI. DLL, die OLE-Clientbibliothek im Microsoft Windows-Umgebung bietet eine OLE-Client-Anwendung zu vereinfachen. Bidirektionale findet Kommunikation zwischen einer Clientanwendung und OLE-Clientbibliothek. Eine Clientanwendung ruft die Funktionen in der Clientbibliothek OLE Aufgaben wie Erstellung, rendern, laden und speichern. Die Clientbibliothek sendet Informationen an die Anwendung durch eine anwendungsdefinierte Rückruffunktion aufgerufen. Die Daten, die die Bibliothek an den Client übergibt enthält Benachrichtigung, dass ein Objekt geändert, umbenannt, gespeichert oder wurde von einem OLE-Server-Anwendung geschlossen.

OLESVR. DLL - OLE-Server Library

OLESVR. DLL, die OLE-Server-Bibliothek bietet eine OLE-Server-Anwendung. Bidirektionale findet Kommunikation zwischen einer Server-Anwendung und der OLE-Server-Bibliothek. Eine Anwendung ruft Funktionen in der Serverbibliothek sich selbst als verfügbar oder seine Verfügbarkeit widerrufen. Außerdem ruft Server Bibliotheksfunktionen speichert oder benennt ein Dokument an. Serverbibliothek vermittelt Informationen an die Serveranwendung über eine Reihe von 27 anwendungsdefinierte Rückruffunktionen. Der Server-Anwendung Rückruffunktionen häufig Methoden, die bezeichnet werden, ist bezeichnet anfordern, dass der Server eine bestimmte Aktion ausführen oder sie informieren, dass ein bestimmtes Ereignis eingetreten ist.

Objekthandler

Ein Endbenutzer normalerweise betrifft nur zwei Arten von OLE-Programme: Clientanwendungen und Server-Anwendung. Allerdings muss ein Anwendungsentwickler auch ein dritter Typ von OLE-Modul bezeichnet ein Objekthandler berücksichtigen. Ein Objekthandler ist eine Dynamic Link Library (DLL), die als eine begrenzte Funktion Anwendung konzipiert werden. Ein Objekthandler enthält Funktionen zur Unterstützung von Objektklassen eine Server-Anwendung erforderlich. Z. B. wenn eine Anwendung den Objektverb aufruft, kann dieser Aufruf durch ein Objekthandler verarbeitet werden, die in den Speicher geladen, verarbeiten und aus dem Speicher ohne jegliche Unterstützung der Hauptserver Anwendung entladen. Ein Objekthandler bietet eine effiziente Möglichkeit, Objekte zu verwalten, da ein Ereignishandler in der Regel klein ist geladen und als eine (oft große) voll funktionsfähige Anwendung entladen. Ein Objekthandler erfolgt mit der OLE-Server-Bibliothek wie eine Anwendung vollständig funktioniert.

VTBLs verwenden

Wie bereits erwähnt, erfolgt Kommunikation die OLE-Clientbibliothek eine Clientanwendung und der OLE-Server-Bibliothek an eine Server-Anwendung durch anwendungsdefinierte Callback-Funktionen. Während der Initialisierung einer Client- oder Server-Anwendung wird die entsprechende Bibliothek mit einem Zeiger auf eine VTBL-Datenstruktur. Die Bibliothek verwendet die Zeiger in der VTBL Callback-Funktionen der Anwendung aufrufen.

Eine VTBLs, die eine Anwendung der OLE-Server-Bibliothek bietet ist eine OLESERVERVTBL aufgerufen. Die Server-Anwendung füllt die Struktur OLESERVERVTBL mit Zeigern auf sechs Callback-Funktionen, die die erstellen, CreateFromTemplate bearbeiten, beenden, öffnen und Release-Methoden implementieren. Sobald die Server-Anwendung VTBL initialisierte Bibliothek Server übergibt, kann die Bibliothek sechs Methoden aufrufen durch Dereferenzierung von Zeigern in der VTBL. Beachten Sie, dass eine VTBL mit die OLE-Bibliotheken eine anwendungsdefinierte Funktion aufgerufen, die eine Methode unabhängig von den Namen der Funktion implementiert.

Die Sprache C++-Programmierern mag VTBL Konzept C++ virtuelle Methode Konzept ähnelt. VTBLs und virtuelle Methoden sind in der Tat eng miteinander verbunden. Eine VTBL ermöglicht die OLE-Bibliotheken an Methoden, die eine Client oder Server-Anwendung implementieren müssen, und die Implementierung der Methoden für jede Objektklasse definiert werden.

Kommunikation zwischen Bibliothek

In der ersten Implementierung der OLE-Bibliotheken mit der Version 3.1 von der Microsoft Windows Software Development Kit (SDK) kommunizieren die Bibliotheken mit messaging-Protokolls dynamischem Datenaustausch (DDE). Client- und Bibliotheken senden miteinander einen Standardsatz von OLE Befehle WM_DDE_EXECUTE Nachrichten. Diese Implementierung der OLE-Bibliotheken verwendet nicht die Dynamic Data Exchange Management Bibliothek (DDEML) für Windows 3.1 entwickelt, da die DDEML und der OLE-Bibliotheken parallel entwickelt wurden. Zukünftige Versionen der OLE-Bibliotheken können die DDEML oder anderen prozessübergreifenden Kommunikationsmechanismus.

Das Kommunikationsprotokoll zwischen Bibliothek die OLE-Bibliotheken die Bibliotheken ausgeblendet und Entwurf einer OLE-Client oder Server-Anwendung nicht beeinträchtigen sollte.

Die Shell-Bibliothek

Viele OLE-Programme verwenden auch eine dritte Bibliothek SHELL. DLL. die Shell-Bibliothek stellt API-Funktionen, mit denen eine Anwendung der Windows-Registrierungsdatenbank zu lesen. Die Registrierungsdatenbank enthält Informationen über die OLE-Server auf das System und die Objektklassen und Verben installiert, dass jeder unterstützt. Shell-Bibliothek bietet auch Unterstützung für Drag & Drop-Bearbeitung von Dateien mit Windows Datei-Manager. Wenn ein Client OLE-Drag & Drop-Unterstützung implementiert, eine Datei möglicherweise vom Datei-Manager Drag & Drop in einem Dokument in einer Clientanwendung, die Datei in das Dokument einzubetten.

Ein OLE-Objekt abzulegen in der Zwischenablage.

Zum Anzeigen eines Objekts Präsentationsformat gibt Darstellung des Objekts. Wenn eine Anwendung ein Objekt in der Zwischenablage platziert, stellt eine oder mehrere Grafiken Darstellung des Objekts. Diese Darstellung können das Metadateiformat (CF_METAFILEPICT), geräteabhängige Bitmap (CF_BITMAP)-Format oder das geräteunabhängige Bitmapformat (CF_DIB) enthalten. Wenn der Benutzer ein Objekt in ein anderes Dokument in einer Clientanwendung eingefügt, mit der die OLE-Bibliotheken dieser Präsentation Formate das Objekt angezeigt. Da eine Bitmap oder eine Metadatei häufig Darstellung ändert, wenn er geändert wird, variieren die Darstellung eines Objekts je nach Präsentationsformat verwendet, um das Objekt anzuzeigen.

Ein eingebettetes Objekt wird im Format OwnerLink, das systemeigene Format und eines der drei Präsentationsformate beschriebenen (CF_METAFILEPICT, CF_BITMAP oder CF_DIB) in der Zwischenablage gespeichert. Jede Präsentation und vordefinierten Windows-Format wird durch eine benannte Konstante im Fenster dargestellt. H-Headerdatei im SDK enthalten. Jedoch sind OwnerLink und Native Formate, die von jedem OLE-Anwendung verwendet werden, nicht in WINDOWS definiert. H. jede OLE-Anwendung muss die RegisterClipboardFormat-Funktion registrieren OwnerLink und systemeigene Formate mit Windows aufrufen.
Eigenschaften

Artikelnummer: 86008 – Letzte Überarbeitung: 16.01.2017 – Revision: 1

Feedback