Partager via


Comment COM+ modifie les valeurs de retour

COM+ ne modifie jamais la valeur de retour d’un HRESULT qui indique une défaillance, comme E_UNEXPECTED ou E_FAIL. Toutefois, lorsqu’un objet utilisant la fonctionnalité COM+ retourne une valeur HRESULT indiquant la réussite (par exemple, S_OK, S_FALSE ou NOERROR), COM+ convertit parfois le HRESULT en code d’erreur COM+ avant de revenir à l’appelant.

Par exemple, lorsqu’une application retourne S_OK après l’appel de IObjectContext::SetComplete, si l’objet est la racine d’une transaction qui ne parvient pas à valider, le HRESULT est converti en CONTEXT_E_ABORTED.

Lorsque COM+ convertit une valeur HRESULT , il efface tous les paramètres de sortie de la méthode. Les références retournées sont libérées et les valeurs des pointeurs d’objet retournés sont définies sur NULL.

Isolation des erreurs et stratégie failfast

Recherche de la source d’une erreur

Interprétation des codes d’erreur

Stratégies de gestion des erreurs dans COM+

Dépannage