Méthode ITransactionContextEx ::Abort (comsvcs.h)
Abandonne le travail de tous les objets COM participant à la transaction actuelle. La transaction se termine au retour de cette méthode.
Syntaxe
HRESULT Abort();
Valeur de retour
Cette méthode peut retourner les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY et E_UNEXPECTED, ainsi que les valeurs suivantes.
Code de retour | Description |
---|---|
|
La transaction a été abandonnée. |
|
L’objet TransactionContextEx ne s’exécute pas sous un processus COM+, ce qui indique éventuellement une entrée de Registre endommagée pour le composant TransactionContextEx . |
Remarques
L’appel d’Abort met fin à la transaction au retour de la méthode et désactive automatiquement tous les objets participants. Chaque gestionnaire de ressources inscrit dans la transaction restaure les opérations effectuées pour le compte de ces objets.
Exemples
ITransactionContextEx* pTransactionContext = NULL;
IMyObject* pMyObject = NULL;
boolean bUserCanceled = FALSE;
HRESULT hr;
// Get TransactionContextEx.
hr = CoCreateInstance(CLSID_ITransactionContextEx,
NULL, CLSCTX_INPROC, IID_ITransactionContextEx,
(void**)&pTransactionContext);
if (FAILED(hr)) throw(hr);
// Create an instance of MyObject.
hr = pTransactionContext->CreateInstance(CLSID_CMyObject,
IID_IMyObject, (void**)&pMyObject);
if (FAILED(hr)) throw(hr);
// Do some work here.
// If something goes wrong, abort the transaction.
if (bUserCanceled) {
hr = pTransactionContext->Abort();
if (FAILED(hr)) throw(hr);
// Otherwise, commit it.
} else {
hr = pTransactionContext->Commit();
if (FAILED(hr)) throw(hr);
}
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 |