Cara COM+ Memodifikasi Nilai Yang Dikembalikan

COM+ tidak mengubah nilai pengembalian HRESULT yang menandakan kegagalan, seperti E_UNEXPECTED atau E_FAIL. Namun, ketika objek yang menggunakan fungsionalitas COM+ mengembalikan nilai HRESULT yang menunjukkan keberhasilan (seperti S_OK, S_FALSE, atau NOERROR), COM+ terkadang mengonversi HRESULT menjadi kode kesalahan COM+ sebelum kembali ke pemanggil.

Misalnya, ketika aplikasi mengembalikan S_OK setelah memanggil IObjectContext::SetComplete, jika objek adalah akar dari transaksi yang gagal dilakukan, HRESULT dikonversi menjadi CONTEXT_E_ABORTED.

Ketika COM+ mengonversi nilai HRESULT, COM+ menghapus semua parameter output metode. Referensi yang dikembalikan dirilis, dan nilai penunjuk objek yang dikembalikan diatur ke NULL.

Isolasi Kesalahan dan Kebijakan Cepat Gagal

Menemukan Sumber Kesalahan

Menginterpretasikan Kode Kesalahan

Strategi untuk Menangani Kesalahan di COM+

Pemecahan Masalah