Metode ICrmLogControl::WriteLogRecord (comsvcs.h)
CRM Worker dan CRM Compensator menggunakan metode ini untuk menulis catatan log yang tidak terstruktur ke log. Metode ini biasanya akan digunakan oleh komponen CRM yang ditulis dalam C++. Rekaman ditulis dengan malas ke log dan harus dipaksa sebelum menjadi tahan lama. (Lihat ICrmLogControl::ForceLog.)
Sintaks
HRESULT WriteLogRecord(
[in] BLOB [] rgBlob,
[in] ULONG cBlob
);
Parameter
[in] rgBlob
Array BLOB yang membentuk rekaman log. BLOB adalah jenis data Windows yang digunakan untuk menyimpan data biner dalam jumlah arbitrer.
[in] cBlob
Jumlah BLOB dalam array.
Nilai kembali
Metode ini dapat mengembalikan nilai berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Metode berhasil diselesaikan. |
|
Jumlah BLOB adalah nol. |
|
Penunjuk NULL disediakan sebagai argumen. |
|
Metode ini dipanggil dalam keadaan yang salah; baik sebelum RegisterCompensator atau ketika transaksi selesai (Pekerja CRM). |
|
Transaksi telah dibatalkan, kemungkinan besar karena waktu transaksi habis. |
Keterangan
Rekaman yang tidak terstruktur hanyalah buffer byte. Metode ini mengimplementasikan kemampuan pengumpulan dengan memungkinkan bagian dari catatan log CRM tertentu dibangun dari array BLOB, yang merupakan struktur yang berisi penunjuk ke data ditambah hitungan jumlah byte. Ini mengurangi penyalinan data, yang hanya mengarah ke satu salinan langsung dari ruang memori CRM ke buffer manajer log.
Rekaman log yang tidak terstruktur dan terstruktur tidak dapat dicampur; Baik WriteLogRecord atau WriteLogRecordVariants dapat dipanggil, tetapi tidak keduanya oleh CRM Worker atau CRM Compensator yang sama.
Anda tidak boleh menyertakan jenis penunjuk dalam struktur data yang terkandung dalam BLOB dalam rekaman log. Referensi objek tidak lagi valid selama fase pemulihan karena CRM Compensator berjalan dalam proses yang berbeda dari CRM Worker yang menulis catatan log. Menyertakan jenis penunjuk dalam BLOB dalam catatan log dapat menyebabkan aplikasi crash atau merusak dirinya sendiri selama pemulihan.
Persyaratan
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 |