Bagikan melalui


Fungsi RegSetValueExW (winreg.h)

Mengatur data dan jenis nilai tertentu di bawah kunci registri.

Sintaksis

LSTATUS RegSetValueExW(
  [in]           HKEY       hKey,
  [in, optional] LPCWSTR    lpValueName,
                 DWORD      Reserved,
  [in]           DWORD      dwType,
  [in]           const BYTE *lpData,
  [in]           DWORD      cbData
);

Parameter

[in] hKey

Handel ke kunci registri terbuka. Kunci harus dibuka dengan hak akses KEY_SET_VALUE. Untuk informasi selengkapnya, lihat Keamanan Kunci Registri dan Hak Akses.

Handel ini dikembalikan oleh RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyEx, atau fungsi RegOpenKeyTransacted. Ini juga bisa menjadi salah satu kunci berikut yang telah ditentukan sebelumnya:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
Versi Unicode dari fungsi ini mendukung kunci tambahan berikut yang telah ditentukan sebelumnya:
  • HKEY_PERFORMANCE_TEXT
  • HKEY_PERFORMANCE_NLSTEXT

[in, optional] lpValueName

Nama nilai yang akan ditetapkan. Jika nilai dengan nama ini belum ada di kunci, fungsi akan menambahkannya ke kunci.

Jika lpValueNamenull atau string kosong, "", fungsi mengatur jenis dan data untuk nilai kunci yang tidak bernama atau default.

Untuk informasi selengkapnya, lihat Batas Ukuran Elemen Registri.

Kunci registri tidak memiliki nilai default, tetapi dapat memiliki satu nilai yang tidak disebutkan namanya, yang bisa dari jenis apa pun.

Reserved

Parameter ini dicadangkan dan harus nol.

[in] dwType

Jenis data yang ditujukkan oleh parameter lpData . Untuk daftar jenis yang mungkin, lihat Jenis Nilai Registri .

[in] lpData

Data yang akan disimpan.

Untuk jenis berbasis string, seperti REG_SZ, string harus null-dihentikan. Dengan jenis data REG_MULTI_SZ, string harus dihentikan dengan dua karakter null .

Catatan lpData yang menunjukkan nilai null valid, namun, jika demikian, cbData harus diatur ke '0'.
 

[in] cbData

Ukuran informasi yang ditujukkan oleh parameter lpData , dalam byte. Jika data berjenis REG_SZ, REG_EXPAND_SZ, atau REG_MULTI_SZ, cbData harus menyertakan ukuran karakter atau karakter null yang dihentikan.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah ERROR_SUCCESS.

Jika fungsi gagal, nilai pengembalian adalah kode kesalahan nonzero yang ditentukan dalam Winerror.h. Anda dapat menggunakan fungsi FormatMessage dengan bendera FORMAT_MESSAGE_FROM_SYSTEM untuk mendapatkan deskripsi umum tentang kesalahan tersebut.

Komentar

Ukuran nilai dibatasi oleh memori yang tersedia. Namun, menyimpan nilai besar dalam registri dapat memengaruhi performanya. Nilai panjang (lebih dari 2.048 byte) harus disimpan sebagai file, dengan lokasi file yang disimpan di registri.

Elemen aplikasi seperti ikon, bitmap, dan file yang dapat dieksekusi harus disimpan sebagai file dan tidak ditempatkan di registri.

Jika dwType adalah jenis REG_SZ, REG_MULTI_SZ, atau REG_EXPAND_SZ dan versi ANSI dari fungsi ini digunakan (baik dengan secara eksplisit memanggil RegSetValueExA atau dengan tidak menentukan UNICODE sebelum menyertakan file Windows.h), data yang diarahkan oleh parameter lpData harus berupa string karakter ANSI. String dikonversi ke Unicode sebelum disimpan dalam registri.

Perhatikan bahwa operasi yang mengakses kunci registri tertentu dialihkan. Untuk informasi selengkapnya, lihat Virtualisasi Registri dan Data Aplikasi 32-bit dan 64-bit diRegistri .

Pertimbangkan untuk menggunakan fungsi RegSetKeyValue, yang menyediakan cara yang lebih nyaman untuk mengatur nilai kunci registri.

Nota

Header winreg.h mendefinisikan RegSetValueEx 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

Syarat Nilai
klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Platform Target Windows
Header winreg.h (termasuk Windows.h)
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

RegSetKeyValue

RegCreateKeyEx

RegFlushKey

RegOpenKeyEx

RegQueryValueEx

Fungsi Registri

Gambaran Umum Registri