Fungsi RegSaveKeyExA (winreg.h)
Menyimpan kunci yang ditentukan dan semua subkuntang dan nilainya ke file registri, dalam format yang ditentukan.
Aplikasi yang mencadangkan atau memulihkan status sistem termasuk file sistem dan sarang registri harus menggunakan Layanan Menyalin Bayangan Volume alih-alih fungsi registri.
Sintaks
LSTATUS RegSaveKeyExA(
[in] HKEY hKey,
[in] LPCSTR lpFile,
[in, optional] const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
[in] DWORD Flags
);
Parameter
[in] hKey
Handel ke kunci registri terbuka.
Fungsi ini tidak mendukung kunci HKEY_CLASSES_ROOT yang telah ditentukan sebelumnya.
[in] lpFile
Nama file tempat kunci dan subkey yang ditentukan akan disimpan. Jika file sudah ada, fungsi gagal.
File baru memiliki atribut arsip.
Jika string tidak menyertakan jalur, file dibuat di direktori saat ini dari proses pemanggilan untuk kunci lokal, atau di direktori %systemroot%\system32 untuk kunci jarak jauh.
[in, optional] lpSecurityAttributes
Penunjuk ke struktur SECURITY_ATTRIBUTES yang menentukan deskriptor keamanan untuk file baru. Jika lpSecurityAttributes adalah NULL, file akan mendapatkan pendeskripsi keamanan default. ACL dalam deskriptor keamanan default untuk file diwarisi dari direktori induknya.
[in] Flags
Format kunci atau sarang yang disimpan. Parameter ini bisa menjadi salah satu nilai berikut.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan ERROR_SUCCESS.
Jika fungsi gagal, nilai yang dikembalikan adalah kode kesalahan bukan nol yang ditentukan dalam Winerror.h. Anda dapat menggunakan fungsi FormatMessage dengan bendera FORMAT_MESSAGE_FROM_SYSTEM untuk mendapatkan deskripsi umum tentang kesalahan tersebut.
Jika lebih dari salah satu nilai yang mungkin tercantum di atas untuk parameter Bendera ditentukan dalam satu panggilan ke fungsi ini—misalnya, jika dua nilai atau lebih adalah OR'ed— atau jika REG_NO_COMPRESSION ditentukan dan hKey menentukan kunci yang bukan akar sarang, fungsi ini mengembalikan ERROR_INVALID_PARAMETER.
Keterangan
Tidak seperti RegSaveKey, fungsi ini tidak mendukung HKEY_CLASSES_ROOT kunci yang telah ditentukan sebelumnya.
Jika hKey mewakili kunci pada komputer jarak jauh, jalur yang dijelaskan oleh lpFile relatif terhadap komputer jarak jauh.
Fungsi RegSaveKeyEx hanya menyimpan kunci nonvolatile. Ini tidak menyimpan kunci volatil. Kunci dibuat volatil atau nonvolatile pada pembuatannya; lihat RegCreateKeyEx.
Anda dapat menggunakan file yang dibuat oleh RegSaveKeyEx dalam panggilan berikutnya ke fungsi RegLoadKey, RegReplaceKey, atau RegRestoreKey . Jika RegSaveKeyEx gagal sebagian melalui operasinya, file akan rusak dan panggilan berikutnya ke RegLoadKey, RegReplaceKey, atau RegRestoreKey untuk file akan gagal.
Menggunakan RegSaveKeyEx bersama dengan RegRestoreKey untuk menyalin subtree di registri tidak disarankan. Metode ini tidak memicu pemberitahuan dan dapat membatalkan handel yang digunakan oleh aplikasi lain. Sebagai gantinya, gunakan fungsi SHCopyKey atau fungsi RegCopyTree .
Proses panggilan harus mengaktifkan hak istimewa SE_BACKUP_NAME. Untuk informasi selengkapnya, lihat Menjalankan dengan Hak Istimewa Khusus.
Catatan
Header winreg.h mendefinisikan RegSaveKeyEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | winreg.h (termasuk Windows.h) |
Pustaka | Advapi32.lib |
DLL | Advapi32.dll |