Memanggil SRSetRestorePoint
Aplikasi dapat membuat titik pemulihan sebelum menyebabkan perubahan sistem yang signifikan, seperti penginstalan, penghapusan instalasi, atau pembaruan.
Penginstal harus membuat titik pemulihan sebelum penginstalan dengan memanggil fungsi SRSetRestorePoint dengan dwEventType
anggota struktur yang RESTOREPOINTINFO
diatur ke BEGIN_SYSTEM_CHANGE
. Untuk memberi tahu Pemulihan Sistem bahwa penginstalan telah selesai, panggil SRSetRestorePoint dengan dwEventType
diatur ke END_SYSTEM_CHANGE
.
Jika pengguna membatalkan penginstalan aplikasi, alat penginstal dapat menghapus titik pemulihan yang dibuatnya saat penginstalan dimulai. Menghapus titik pemulihan bersifat opsional dan dapat mencegah pengguna memulihkan dari perubahan yang tidak disengaja yang dilakukan oleh penginstal selama pembatalan. Jika alat penginstal adalah menghapus titik pemulihan, alat ini dapat memanggil fungsi SRRemoveRestorePoint, atau memanggil SRSetRestorePoint dengan dwRestorePointType
diatur ke , dwEventType
diatur ke CANCELLED_OPERATION
, dan llSequenceNumber
diatur ke END_SYSTEM_CHANGE
nilai yang dikembalikan oleh panggilan awal ke SRSetRestorePoint.
Dimulai dengan Windows 8, pengembang dapat menulis aplikasi yang membuat nilai DWORD SystemRestorePointCreationFrequency di bawah HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore
kunci registri. Nilai kunci registri ini dapat mengubah frekuensi pembuatan titik pemulihan. Secara default, kunci ini tidak ada.
Saat aplikasi memanggil fungsi SRSetRestorePoint untuk membuat titik pemulihan, salah satu hal berikut ini terjadi tergantung pada konten kunci:
Jika kunci tidak ada (default) dan titik pemulihan apa pun telah dibuat dalam 24 jam terakhir, Windows melewati pembuatan titik pemulihan baru ini. Pemulihan Sistem mengatur
IISequenceNumber
anggotaSTATEMGRSTATUS
struktur ke nomor urut untuk titik pemulihan yang dibuat sebelumnya pada hari itu dan mengatur nilainStatus
anggota keERROR_SUCCESS
. Fungsi SRSetRestorePoint mengembalikanTRUE
.Jika nilai kunci registri adalah 0, pemulihan sistem tidak melewati pembuatan titik pemulihan baru.
Jika nilai kunci registri adalah bilangan bulat N, pemulihan sistem melompati pembuatan titik pemulihan baru jika ada titik pemulihan yang dibuat di N menit sebelumnya.
Pemulihan Sistem yang berjalan pada windows 8 memantau file dalam volume boot yang relevan hanya untuk pemulihan sistem. Rekam jepret volume boot yang dibuat oleh Pemulihan Sistem yang berjalan pada Windows 8 dapat dihapus jika rekam jepret kemudian diekspos oleh versi Windows yang lebih lama. Perhatikan bahwa meskipun hanya ada satu volume sistem, ada satu volume boot untuk setiap sistem operasi dalam sistem multi-boot.
Pengembang dapat menulis aplikasi yang membuat nilai DWORD ScopeSnapshots di bawah HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore
kunci registri. Jika nilai kunci registri ini adalah 0, Pemulihan Sistem membuat rekam jepret volume boot dengan cara yang sama seperti di versi Windows sebelumnya. Jika nilai ini dihapus, Pemulihan Sistem yang berjalan pada Windows 8 melanjutkan pembuatan rekam jepret yang memantau file dalam volume boot yang hanya relevan untuk pemulihan sistem.
Misalnya, lihat Menggunakan Pemulihan Sistem.