OleCreateLinkFromData-Funktion (ole2.h)
Erstellt ein verknüpftes Objekt aus einem Datenübertragungsobjekt, das entweder aus der Zwischenablage oder als Teil eines OLE-Drag-and-Drop-Vorgangs abgerufen wird.
Syntax
HRESULT OleCreateLinkFromData(
[in] LPDATAOBJECT pSrcDataObj,
[in] REFIID riid,
[in] DWORD renderopt,
[in] LPFORMATETC pFormatEtc,
[in] LPOLECLIENTSITE pClientSite,
[in] LPSTORAGE pStg,
[out] LPVOID *ppvObj
);
Parameter
[in] pSrcDataObj
Zeiger auf die IDataObject-Schnittstelle des Datenübertragungsobjekts, aus dem das verknüpfte Objekt erstellt werden soll.
[in] riid
Verweis auf den Bezeichner der Schnittstelle, die der Aufrufer später verwendet, um mit dem neuen Objekt zu kommunizieren (in der Regel IID_IOleObject, definiert in den OLE-Headern als Schnittstellenbezeichner für IOleObject).
[in] renderopt
Wert aus der OLERENDER-Enumeration , der die lokal zwischengespeicherten Zeichnungs- oder Datenabruffunktionen angibt, über die das neu erstellte Objekt verfügen soll. Weitere Überlegungen werden im folgenden Abschnitt "Hinweise" beschrieben.
[in] pFormatEtc
Zeiger auf einen Wert aus der OLERENDER-Enumeration , der die lokal zwischengespeicherten Zeichnungs- oder Datenabruffunktionen angibt, über die das neu erstellte Objekt verfügen soll. Der ausgewählte OLERENDER-Wert wirkt sich auf die möglichen Werte für den pFormatEtc-Parameter aus.
[in] pClientSite
Zeiger auf eine instance von IOleClientSite, der primären Schnittstelle, über die das Objekt Dienste von seinem Container anfordere. Dieser Parameter kann NULL sein.
[in] pStg
Zeiger auf die IStorage-Schnittstelle für das Speicherobjekt. Dieser Parameter darf nicht NULL sein.
[out] ppvObj
Adresse der Zeigervariablen, die den in riid angeforderten Schnittstellenzeiger empfängt. Nach erfolgreicher Rückgabe enthält ppvObj den angeforderten Schnittstellenzeiger für das neu erstellte Objekt.
Rückgabewert
Diese Funktion gibt S_OK nach Erfolg zurück. Weitere mögliche Werte sind:
Rückgabecode | Beschreibung |
---|---|
|
Die Zwischenablage kann nicht geöffnet werden. |
|
Der Moniker des Objekts kann nicht extrahiert werden. |
|
Die Bindung an die Quelle ist nicht möglich. Eine Bindung ist erforderlich, um die Initialisierungsdaten des Caches abzurufen. |
Hinweise
Die OleCreateLinkFromData-Funktion wird verwendet, um entweder einen Paste-Link- oder einen Drag-Link-Vorgang zu implementieren. Seine Operation ähnelt der der OleCreateFromData-Funktion , mit der Ausnahme, dass sie einen Link erstellt und nach verschiedenen Datenformaten sucht. Wenn das CF_LINKSOURCE Format nicht vorhanden ist und entweder das Format FileName oder FileNameW im Datenübertragungsobjekt vorhanden ist, erstellt OleCreateLinkFromData ein Paket, das den Link zur angegebenen Datei enthält.
Sie verwenden die Parameter renderopt und pFormatetc , um die Zwischenspeicherungsfunktion des neu erstellten Objekts zu steuern. Allgemeine Informationen zum Bestimmen, was zwischengespeichert werden soll, finden Sie in der OLERENDER-Enumeration eine Beschreibung der Interaktion zwischen renderopt und pFormatetc. Es gibt jedoch einige zusätzliche spezifische Auswirkungen dieser Parameter auf die Art und Weise, wie OleCreateLinkFromData den Cache initialisiert, wie folgt.
Wert | BESCHREIBUNG |
---|---|
OLERENDER_DRAW, OLERENDER_FORMAT | Wenn die Präsentationsinformationen im Quelldatenobjekt in den anderen Formaten vorliegen, werden diese Informationen verwendet. Wenn die Informationen nicht vorhanden sind, ist der Cache zunächst leer, wird aber bei der ersten Ausführung des Objekts gefüllt. Im neu erstellten Objekt werden keine anderen Formate zwischengespeichert. |
OLERENDER_NONE, OLERENDER_ASIS | Im neu erstellten Objekt soll nichts zwischengespeichert werden. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | ole2.h |
Bibliothek | Ole32.lib |
DLL | Ole32.dll |