Metode ITransactionContextEx::Abort (comsvcs.h)
Membatalkan pekerjaan semua objek COM yang berpartisipasi dalam transaksi saat ini. Transaksi berakhir dengan pengembalian dari metode ini.
Sintaks
HRESULT Abort();
Mengembalikan nilai
Metode ini dapat mengembalikan nilai pengembalian standar E_INVALIDARG, E_OUTOFMEMORY, dan E_UNEXPECTED, serta nilai berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Transaksi dibatalkan. |
|
Objek TransactionContextEx tidak berjalan di bawah proses COM+, mungkin menunjukkan entri registri yang rusak untuk komponen TransactionContextEx . |
Keterangan
Memanggil Abort mengakhiri transaksi pada pengembalian metode dan secara otomatis menonaktifkan semua objek yang berpartisipasi. Setiap manajer sumber daya yang terdaftar dalam transaksi mengembalikan operasi yang dilakukan atas nama objek tersebut.
Contoh
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);
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | comsvcs.h |