Partager via


ObjectContext ::CreateInstance, méthode (comsvcs.h)

Crée un objet à l’aide du contexte de l’objet actuel.

L’objet n’aura de contexte que si son composant est inscrit auprès de COM+.

Syntaxe

HRESULT CreateInstance(
  [in]  BSTR    bstrProgID,
  [out] VARIANT *pObject
);

Paramètres

[in] bstrProgID

ProgID du type d’objet à instancier.

[out] pObject

Référence au nouvel objet.

Valeur retournée

Cette méthode peut retourner les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY et E_FAIL, ainsi que les valeurs suivantes.

Code de retour Description
S_OK
La commande s'est correctement terminée.
E_UNEXPECTED
Une erreur inattendue s’est produite. Cela peut se produire si un objet transmet son pointeur ObjectContext à un autre objet et si l’autre objet appelle CreateInstance à l’aide de ce pointeur. Un pointeur ObjectContext n’est pas valide en dehors du contexte de l’objet qui l’a obtenu à l’origine.

Remarques

Lorsque vous créez un objet à l’aide de CreateInstance, le contexte du nouvel objet est dérivé de l’ObjetContext de l’objet actuel et des propriétés déclaratives du composant du nouvel objet. Le nouvel objet s’exécute toujours dans la même activité que l’objet qui l’a créé. Si l’objet actuel a une transaction, l’attribut de transaction du composant du nouvel objet détermine si le nouvel objet s’exécute dans l’étendue de cette transaction.

Si le paramètre d’attribut de transaction du composant nécessite une transaction ou prend en charge des transactions, le nouvel objet hérite de la transaction de son créateur. Si l’attribut de transaction du composant nécessite une nouvelle transaction, COM+ lance une nouvelle transaction pour le nouvel objet. Si l’attribut transactionnel du composant ne prend pas en charge les transactions, le nouvel objet ne s’exécute sous aucune transaction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête comsvcs.h

Voir aussi

Objectcontext