OleCreate-Funktion (ole.h)

Erstellt ein eingebettetes Objekt, das von einer CLSID identifiziert wird. Sie verwenden es in der Regel, um das Menüelement zu implementieren, mit dem der Endbenutzer ein neues Objekt einfügen kann.

Syntax

OLESTATUS OleCreate(
  LPCSTR        unnamedParam1,
  LPOLECLIENT   unnamedParam2,
  LPCSTR        unnamedParam3,
  LHCLIENTDOC   unnamedParam4,
  LPCSTR        unnamedParam5,
  LPOLEOBJECT   *unnamedParam6,
  OLEOPT_RENDER unnamedParam7,
  OLECLIPFORMAT unnamedParam8
);

Parameter

unnamedParam1

TBD

unnamedParam2

TBD

unnamedParam3

TBD

unnamedParam4

TBD

unnamedParam5

TBD

unnamedParam6

TBD

unnamedParam7

TBD

unnamedParam8

TBD

Rückgabewert

Diese Funktion gibt S_OK für Erfolg zurück und unterstützt den Standardrücklaufwert E_OUTOFMEMORY.

Rückgabecode Beschreibung
E_OUTOFMEMORY
Unzureichender Arbeitsspeicher für den Vorgang.

Hinweise

Die OleCreate-Funktion erstellt ein neues eingebettetes Objekt und wird in der Regel aufgerufen, um das Menüelement "Neues Objekt einfügen" zu implementieren. Wenn OleCreate zurückgibt, ist das objekt, das er erstellt hat, leer (enthält keine Daten), es sei denn, renderopt ist OLERENDER_DRAW oder OLERENDER_FORMAT, und wird geladen. Container rufen in der Regel die OleRun-Funktion oder IOleObject::D oVerb auf, um das Objekt für die anfängliche Bearbeitung anzuzeigen.

Der rclsid-Parameter gibt die CLSID des angeforderten Objekts an. CLSIDs registrierter Objekte werden in der Systemregistrierung gespeichert. Wenn ein Anwendungsbenutzer "Objekt einfügen" auswählt, ermöglicht es dem Benutzer, den gewünschten Objekttyp aus der Registrierung auszuwählen. Wenn OleCreate zum Implementieren des Menüelements "Objekt einfügen" verwendet wird, wird der CLSID, die dem ausgewählten Element zugeordnet ist, dem rclsid-Parameter von OleCreate zugewiesen.

Der Riid-Parameter gibt die Schnittstelle an, die der Client zum Kommunizieren mit dem neuen Objekt verwendet. Nach erfolgreicher Rückgabe enthält der ppvObject-Parameter einen Zeiger auf die angeforderte Schnittstelle.

Der Cache des erstellten Objekts enthält Informationen, die eine Präsentation eines enthaltenen Objekts ermöglichen, wenn der Container geöffnet wird. Informationen dazu, was zwischengespeichert werden soll, werden in den Renderopt - und pFormattc-Werten übergeben. Wenn OleCreate zurückgibt, wird der Cache des erstellten Objekts nicht unbedingt gefüllt. Stattdessen wird der Cache zum ersten Mal gefüllt, wenn das Objekt den ausführungszustand eingibt. Der Aufrufer kann zusätzliche Cachesteuerelemente mit einem Aufruf zu IOleCache::Cache nach der Rückgabe von OleCreate und vor der Ausführung des Objekts hinzufügen. Wenn renderopt OLERENDER_DRAW oder OLERENDER_FORMAT ist, erfordert OleCreate , dass das Objekt die IOleCache-Schnittstelle unterstützt. Es gibt keine solche Anforderung für einen anderen Wert von renderopt.

Wenn pClientSite nicht NULL ist, ruft OleCreateIOleObject::SetClientSite über den pClientSite-Zeiger auf. IOleClientSite ist die primäre Schnittstelle, durch die ein Objekt Dienste aus seinem Container anfordert. Wenn pClientSiteNULL ist, müssen Sie einen bestimmten Aufruf an IOleObject::SetClientSite vornehmen, bevor Sie Vorgänge versuchen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ole.h (einschließlich Ole2.h)
Bibliothek Ole32.lib
DLL Ole32.dll

Weitere Informationen

FORMATETC

IOleClientSite

IOleObject

OLERENDER