Share via


CComPtrBase::CoCreateInstance

Appelez cette méthode pour créer un objet de la classe associée à un ID de classe spécifiée ou pour programmer l'ID

HRESULT CoCreateInstance(
   LPCOLESTR szProgID,
   LPUNKNOWN pUnkOuter = NULL,
   DWORD dwClsContext = CLSCTX_ALL 
) throw( );
HRESULT CoCreateInstance(
   REFCLSID rclsid,
   LPUNKNOWN pUnkOuter = NULL,
   DWORD dwClsContext = CLSCTX_ALL 
) throw( );

Paramètres

  • szProgID
    Pointeur vers un progid, utilisé pour récupérer le CLSID.

  • pUnkOuter
    Si NULL, indique que l'objet n'est pas créé dans le cadre d'un agrégat.Si nonNULL, est un pointeur vers l'interface d' IUnknown de l'objet global ( IUnknownde contrôle).

  • dwClsContext
    Contexte dans lequel le code qui gère l'objet nouvellement créé s'exécutera.

  • rclsid
    Le CLSID associé à des données et le code qui seront utilisés pour créer l'objet.

Valeur de retour

Retourne S_OK en cas de réussite, ou REGDB_E_CLASSNOTREG, CLASS_E_NOAGGREGATION, CO_E_CLASSSTRING ou E_NOINTERFACE en cas de échec.Voir CoCreateClassInstance et le CLSIDFromProgID pour obtenir une description de ces erreurs.

Notes

Si le premier formulaire de la méthode est appelée, CLSIDFromProgID est utilisé pour récupérer le CLSID.Les deux formes appelez ensuite CoCreateClassInstance.

Dans les versions debug, une erreur d'assertion se produit si CComPtrBase::p n'est pas égale à la valeur NULL.

Configuration requise

Header: atlcomcli.h

Voir aussi

Référence

Classe de CComPtrBase