Freigeben über


ITypeInfo::CreateInstance-Methode (oaidl.h)

Erstellt eine neue instance eines Typs, der eine Komponentenobjektklasse (Coklasse) beschreibt.

Syntax

HRESULT CreateInstance(
  [in]  IUnknown *pUnkOuter,
  [in]  REFIID   riid,
  [out] PVOID    *ppvObj
);

Parameter

[in] pUnkOuter

Das steuernde IUnknown. Bei Null wird ein eigenständiger instance erstellt. Falls gültig, wird ein Aggregatobjekt erstellt.

[in] riid

Eine ID für die Schnittstelle, die der Aufrufer für die Kommunikation mit dem resultierenden Objekt verwendet.

[out] ppvObj

Eine Instanz des erstellten Objekts.

Rückgabewert

Rückgabecode Beschreibung
S_OK
Erfolg.
E_INVALIDARG
Mindestens eines der Argumente ist ungültig.
E_OUTOFMEMORY
Unzureichender Arbeitsspeicher, um den Vorgang abzuschließen.
E_NOINTERFACE
OLE konnte keine Implementierung einer oder mehrerer erforderlicher Schnittstellen finden.
 

Weitere Fehler können von GetActiveObject oder CoCreateInstance zurückgegeben werden.

Hinweise

Für Typen, die eine Komponentenobjektklasse (Coklasse) beschreiben, erstellt CreateInstance eine neue instance der -Klasse. Normalerweise ruft CreateInstanceCoCreateInstance mit der GUID der Typbeschreibung auf. Für ein Application-Objekt wird zuerst GetActiveObject aufgerufen. Wenn die Anwendung aktiv ist, gibt GetActiveObject das aktive Objekt zurück. Andernfalls ruft CreateInstanceCoCreateInstance auf, wenn GetActiveObject fehlschlägt.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile oaidl.h

Weitere Informationen

Itypeinfo