Freigeben über


ITransactionContextEx::Abort-Methode (comsvcs.h)

Bricht die Arbeit aller COM-Objekte ab, die an der aktuellen Transaktion teilnehmen. Die Transaktion endet mit der Rückgabe von dieser Methode.

Syntax

HRESULT Abort();

Rückgabewert

Diese Methode kann die Standardrückgabewerte E_INVALIDARG, E_OUTOFMEMORY und E_UNEXPECTED sowie die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die Transaktion wurde abgebrochen.
E_FAIL
Das TransactionContextEx-Objekt wird nicht unter einem COM+-Prozess ausgeführt, was möglicherweise einen beschädigten Registrierungseintrag für die TransactionContextEx-Komponente angibt.

Hinweise

Das Aufrufen von Abort beendet die Transaktion bei Rückgabe der -Methode und deaktiviert automatisch alle teilnehmenden Objekte. Jeder Ressourcen-Manager, der in der Transaktion aufgeführt ist, führt ein Rollback für die Vorgänge aus, die für diese Objekte ausgeführt werden.

Beispiele

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);
}


Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile comsvcs.h

Weitere Informationen

ITransactionContextEx