Fungsi RegOverridePredefKey (winreg.h)

Memetakan kunci registri yang telah ditentukan sebelumnya ke kunci registri yang ditentukan.

Sintaks

LSTATUS RegOverridePredefKey(
  [in]           HKEY hKey,
  [in, optional] HKEY hNewHKey
);

Parameter

[in] hKey

Handel ke salah satu kunci yang telah ditentukan sebelumnya berikut ini:

  • HKEY_CLASSES_ROOT
  • HKEY_CURRENT_CONFIG
  • HKEY_CURRENT_USER
  • HKEY_LOCAL_MACHINE
  • HKEY_PERFORMANCE_DATA
  • HKEY_USERS

[in, optional] hNewHKey

Handel ke kunci registri terbuka. Handel ini dikembalikan oleh fungsi RegCreateKeyEx atau RegOpenKeyEx . Ini tidak boleh menjadi salah satu kunci yang telah ditentukan sebelumnya. Fungsi memetakan hKey untuk merujuk ke kunci hNewHKey . Ini hanya memengaruhi proses panggilan.

Jika hNewHKeyADALAH NULL, fungsi memulihkan pemetaan default kunci yang telah ditentukan sebelumnya.

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.

Keterangan

Fungsi RegOverridePredefKey ditujukan untuk program penginstalan perangkat lunak. Ini memungkinkan mereka untuk memetakan kembali kunci yang telah ditentukan sebelumnya, memuat komponen DLL yang akan diinstal pada sistem, memanggil titik masuk di DLL, dan memeriksa perubahan pada registri yang coba dilakukan komponen. Program penginstalan kemudian dapat menulis perubahan tersebut ke lokasi yang dimaksudkan oleh DLL, atau membuat perubahan pada data sebelum menulisnya.

Misalnya, pertimbangkan program penginstalan yang menginstal kontrol ActiveX sebagai bagian dari penginstalan aplikasi. Program penginstalan perlu memanggil titik masuk DllRegisterServer kontrol untuk memungkinkan kontrol mendaftarkan dirinya sendiri. Sebelum panggilan ini, program penginstalan dapat memanggil RegOverridePredefKey untuk memetakan ulang HKEY_CLASSES_ROOT ke kunci sementara seperti HKEY_CURRENT_USER\TemporaryInstall\DllRegistration. Kemudian memanggil DllRegisterServer, yang menyebabkan kontrol ActiveX menulis entri registrinya ke kunci sementara. Program penginstalan kemudian memanggil RegOverridePredefKey lagi untuk memulihkan pemetaan asli HKEY_CLASSES_ROOT. Program penginstalan dapat memodifikasi kunci yang ditulis ke kunci sementara, jika perlu, sebelum menyalinnya ke HKEY_CLASSES_ROOT asli.

Setelah panggilan ke RegOverridePredefKey, Anda dapat dengan aman memanggil RegCloseKey untuk menutup handel hNewHKey . Sistem mempertahankan referensinya sendiri ke hNewHKey.

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 winreg.h (termasuk Windows.h)
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

DllRegisterServer

Fungsi Registri

Gambaran Umum Registri