Partager via


Méthode ITypeInfo ::CreateInstance (oaidl.h)

Crée une instance d’un type qui décrit une classe d’objet de composant (coclasse).

Syntaxe

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

Paramètres

[in] pUnkOuter

IUnknown de contrôle. Si la valeur est Null, une instance autonome est créée. S’il est valide, un objet d’agrégation est créé.

[in] riid

ID de l’interface que l’appelant utilisera pour communiquer avec l’objet résultant.

[out] ppvObj

Instance de l'objet créé.

Valeur retournée

Code de retour Description
S_OK
Réussite.
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.
E_OUTOFMEMORY
Mémoire insuffisante pour terminer l’opération.
E_NOINTERFACE
OLE n’a pas trouvé d’implémentation d’une ou plusieurs interfaces requises.
 

Des erreurs supplémentaires peuvent être retournées à partir de GetActiveObject ou CoCreateInstance.

Remarques

Pour les types qui décrivent une classe d’objet de composant (coclasse), CreateInstance crée une nouvelle instance de la classe. Normalement, CreateInstance appelle CoCreateInstance avec le GUID de la description de type. Pour un objet Application, il appelle d’abord GetActiveObject. Si l’application est active, GetActiveObject retourne l’objet actif ; sinon, si GetActiveObject échoue, CreateInstance appelle CoCreateInstance.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête oaidl.h

Voir aussi

ITypeInfo