Partager via


ObjectContext::D isableCommit, méthode (comsvcs.h)

Déclare que les mises à jour transactionnelles de l’objet sont incohérentes et ne peuvent pas être validées dans leur état actuel.

Syntaxe

HRESULT DisableCommit();

Valeur de retour

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. Les mises à jour transactionnelles de l’objet ne peuvent pas être validées tant que l’objet n’appelle pas EnableCommit ou SetComplete.
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 DisableCommit à 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.
CONTEXT_E_NOCONTEXT
Aucun contexte n’est associé à l’objet actif. Cela est probablement dû au fait qu’il n’a pas été créé avec l’une des méthodes COM+ CreateInstance .

Remarques

Vous pouvez utiliser la méthode DisableCommit pour empêcher une transaction de valider prématurément entre des appels de méthode dans un objet avec état. Lorsqu’un objet appelle DisableCommit, il indique que son travail est incohérent et qu’il ne peut pas terminer son travail tant qu’il n’a pas reçu d’autres appels de méthode du client. Il indique également qu’il doit conserver son état pour effectuer ce travail. Cela empêche COM+ de désactiver l’objet et de récupérer ses ressources en retour à partir d’un appel de méthode. Lorsqu’un objet a appelé DisableCommit, si un client tente de valider la transaction avant que l’objet n’ait appelé EnableCommit ou SetComplete, la transaction est abandonnée.

Configuration requise

   
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