Skrip di bawah ini menunjukkan tulisan, baca, dan penghapusan untuk setiap jenis nilai dalam registri Windows.

Jenis nilai registri adalah:

  • String (REG_SZ): String teks dengan panjang tetap.
  • Biner (REG_BINARY): Data biner mentah. Sebagian besar informasi komponen perangkat keras disimpan sebagai data biner dan ditampilkan di Peninjau Suntingan Registri dalam format heksadesimal.
  • DWORD (REG_DWORD): Data diwakili oleh angka yang panjangnya 4 byte (integer 32-bit). Banyak parameter untuk driver dan layanan perangkat adalah jenis ini dan ditampilkan dalam Registry Editor dalam format biner, heksadesimal, atau desimal.
  • Multi-String (REG_MULTI_SZ): String ganda. Nilai yang berisi daftar atau beberapa nilai dalam bentuk yang dapat dibaca orang umumnya jenis ini. Entri dipisahkan oleh spasi, koma, atau tanda lainnya.
  • String yang Dapat Diperluas (REG_EXPAND_SZ): String data variabel-panjang. Tipe data ini termasuk variabel yang diselesaikan ketika suatu program atau layanan menggunakan data.

Opsi Eksplisit

Const HKEY_CLASSES_ROOT = & H80000000

Const HKEY_CURRENT_USER = & H80000001

Const HKEY_LOCAL_MACHINE = & H80000002

Const HKEY_USERS = & H80000003

Const HKEY_CURRENT_CONFIG = & H80000005

Dim strComputer

Dim objRegistry

Dim strKeyPath

Dim strValueName

Dim strValue

Dim arrValues

Dim intValue

strComputer = "."

Set objRegistry = GetObject ("winmgmts: {impersonationLevel = impersonate}!" & StrComputer & "rootdefault: StdRegProv")

'Buat Kunci

strKeyPath = "Tes Registri"

objRegistry.CreateKey HKEY_CURRENT_USER, strKeyPath

'Setel nilai String

strKeyPath = "Tes Registri"

strValueName = "String Test"

strValue = "123"

objRegistry.SetStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue

'Dapatkan nilai String

strKeyPath = "Tes Registri"

strValueName = "String Test"

objRegistry.GetStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue

Wscript.Echo strValueName & "=" & strValue

'Hapus nilai String

strKeyPath = "Tes Registri"

strValueName = "String Test"

objRegistry.DeleteValue HKEY_CURRENT_USER, strKeyPath, strValueName

'Setel nilai Biner

strKeyPath = "Tes Registri"

strValueName = "Tes Biner"

arrValues ​​= Array (1,2,3,4,5,6,7,8,9,10)

objRegistry.SetBinaryValue HKEY_CURRENT_USER, strKeyPath, strValueName, arrValues

'Dapatkan nilai Binary

strKeyPath = "Tes Registri"

strValueName = "Tes Biner"

objRegistry.GetBinaryValue HKEY_CURRENT_USER, strKeyPath, strValueName, arrValues

Untuk Setiap strValue Dalam arrValues

Wscript.Echo strValueName & "=" & strValue

Berikutnya

'Hapus nilai Biner

strKeyPath = "Tes Registri"

strValueName = "Tes Biner"

objRegistry.DeleteValue HKEY_CURRENT_USER, strKeyPath, strValueName

'Setel nilai DWORD

strKeyPath = "Tes Registri"

strValueName = "Test DWORD"

intValue = 123

objRegistry.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, strValueName, intValue

'Dapatkan nilai DWORD

strKeyPath = "Tes Registri"

strValueName = "Test DWORD"

objRegistry.GetDWORDValue HKEY_CURRENT_USER, strKeyPath, strValueName, intValue

Wscript.Echo strValueName & "=" & intValue

'Hapus nilai DWORD

strKeyPath = "Tes Registri"

strValueName = "Test DWORD"

objRegistry.DeleteValue HKEY_CURRENT_USER, strKeyPath, strValueName

'Setel nilai Multi-String

strKeyPath = "Tes Registri"

strValueName = "Uji Multi-String"

arrValues ​​= Array ("Test1", "Test2", "Test3")

objRegistry.SetMultiStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, arrValues

'Dapatkan nilai Multi-String

strKeyPath = "Tes Registri"

strValueName = "Uji Multi-String"

objRegistry.GetMultiStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, arrValues

Untuk Setiap strValue Dalam arrValues

Wscript.Echo strValueName & "=" & strValue

Berikutnya

'Hapus nilai Multi-String

strKeyPath = "Tes Registri"

strValueName = "Uji Multi-String"

objRegistry.DeleteValue HKEY_CURRENT_USER, strKeyPath, strValueName

'Setel nilai String yang Dapat Diperluas

strKeyPath = "Tes Registri"

strValueName = "Tes String yang Dapat Diperluas"

strValue = "123"

objRegistry.SetExpandedStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue

'Dapatkan nilai String yang Dapat Diperluas

strKeyPath = "Tes Registri"

strValueName = "Tes String yang Dapat Diperluas"

objRegistry.GetExpandedStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue

Wscript.Echo strValueName & "=" & strValue

'Hapus nilai String yang Dapat Diperluas

strKeyPath = "Tes Registri"

strValueName = "Tes String yang Dapat Diperluas"

objRegistry.DeleteValue HKEY_CURRENT_USER, strKeyPath, strValueName

'Hapus Kunci

strKeyPath = "Tes Registri"

objRegistry.DeleteKey HKEY_CURRENT_USER, strKeyPath

Set objRegistry = Tidak ada

Tolong dicatat:

Tulisan di atas menulis, membaca dan menghapus nilai-nilai dalam sarang HKCU tetapi dengan mudah dapat dimodifikasi untuk menulis ke salah satu kumpulan registri.

Fungsi penghapusan adalah sama tidak peduli jenis nilai apa yang sedang dihapus