CVssWriter::Metode OnPostSnapshot (vswriter.h)
Metode OnPostSnapshot dipanggil oleh penulis setelah peristiwa PostSnapshot .
OnPostSnapshot adalah metode virtual. Ini diimplementasikan oleh kelas dasar CVssWriter tetapi dapat ditimpa oleh kelas turunan.
Sintaks
bool OnPostSnapshot(
[in] IVssWriterComponents *pComponent
);
Parameter
[in] pComponent
Pointer ke objek IVssWriterComponents yang diteruskan oleh VSS untuk menyediakan metode dengan akses ke informasi komponen penulis. Nilai parameter ini mungkin NULL jika pemohon tidak mendukung komponen (jika CVssWriter::AreComponentsSelected mengembalikan false).
Mengembalikan nilai
Seperti yang diimplementasikan oleh kelas dasar, OnPostSnapshot selalu mengembalikan true.
Implementasi lain dari metode ini harus mengembalikan true kecuali dalam kasus kesalahan fatal. Jika terjadi kesalahan fatal, metode harus memanggil metode CVssWriter::SetWriterFailure untuk memberikan deskripsi kegagalan sebelum mengembalikan false. Jika terjadi kesalahan nonfatal, metode harus tetap memanggil SetWriterFailure tetapi mengembalikan true. Jika kesalahan disebabkan oleh masalah sementara, metode harus menentukan VSS_E_WRITERERROR_RETRYABLE dalam panggilan ke SetWriterFailure.
Dalam semua kasus ketika kegagalan terjadi, metode harus menulis peristiwa ke log peristiwa untuk melaporkan alasan pasti kegagalan tersebut.
Keterangan
Implementasi default metode ini oleh kelas dasar CVssWriter mengembalikan true tanpa melakukan operasi lainnya.
CVssWriter::OnPostSnapshot biasanya digunakan untuk memproses pembaruan akhir oleh penulis ke metadata komponen cadangan dan pembersihan (seperti menghapus file sementara).
Jika pencadangan bertahap atau diferensial sedang dilakukan, penulis dapat memanggil IVssComponent::GetPreviousBackupStamp dan IVssComponent::SetBackupStamp. Untuk informasi selengkapnya, lihat Peran Penulis dalam Mencadangkan Penyimpanan Kompleks. Metode lain yang dapat dipanggil saat ini adalah IVssComponent::AddDifferencedFilesByLastModifyTime.
Sebagian besar pekerjaan yang diperlukan untuk mengembalikan penulis ke operasi normal (membalikkan tindakan CVssWriter::OnPrepareSnapshot dan CVssWriter::OnFreeze) biasanya dilakukan di CVssWriter::OnThaw, bukan di OnPostSnapshot.
Penulis tidak boleh melempar pengecualian dari metode ini atau CVssWriter (Ex): : Pada metode panggilan balikXxx .
Jika salinan bayangan memiliki bendera VSS_VOLSNAP_ATTR_AUTORECOVER yang diatur dalam konteks, penulis harus melakukan pemulihan apa pun yang diperlukan (misalnya, mengembalikan transaksi yang tidak lengkap) sehingga komponen akan dapat digunakan pada salinan baca-saja untuk penambangan data (tanpa menambahkan beban ke server langsung) atau memulihkan tujuan (misalnya, untuk memulihkan item yang dipilih dari database).
Untuk mengambil nama volume salinan bayangan volume, lakukan langkah-langkah berikut:
- Panggil metode CVssWriter::GetCurrentVolumeCount untuk mengkueri jumlah volume dalam kumpulan salinan bayangan.
- Panggil metode CVssWriter::GetCurrentVolumeArray untuk menghitung nama asli volume dalam set salinan bayangan.
- Panggil CVssWriter::GetSnapshotDeviceName untuk mengambil nama volume salinan bayangan.
Persyaratan
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | vswriter.h (termasuk Vss.h, VsWriter.h) |
Pustaka | VssApi.lib |