11 Mei 2009

Mengakses Registry Windows

Registry menurut definisi Microsoft merupakan informasi konfigurasi sistem operasi Windows yang disimpan di database yang berbentuk format pohon (tree). Disini tersimpan berbagai informasi yang berhubungan dengan software, hardware, akun user dan lain sebagainya. Kita bisa melihat isi dari registry dengan tool “regedit.exe”. Dari menu start Windows kemudian pilih Run dan ketikkan regedit, maka akan terbuka Registry Editor yang berisi berbagai macam pengaturan.
Pada Registry Editor, di sisi kiri akan terdapat berbagai macam pilihan dalam format tree mirip dengan susunan direktori pada explorer yang dinamakan dengan registry key. Dan pada sisi kanan terdapat data-data (jika ada) yang bisa berisi nilai yang dinamakan registry entry.
Dalam Registry Editor kita bisa menambahkan atau menghapus registry key maupun registry entry. Yang perlu diperhatikan adalah kita tidak bisa menghapus sembarangan registry key ataupun registry entry yang ada karena dapat mengakibatkan sistem operasi tidak bisa berjalan dengan normal.
Terdapat beberapa registry key yang sudah di definisikan Windows, yaitu:

  • HKEY_CURRENT_USER. Berisi informasi konfigurasi user yang saat ini sedang login, seperti warna layar, pengaturan control panel dan lain-lain.
  • HKEY_USERS. Berisi profil user pada komputer. HKEY_CURRENT_USER merupakan subkey dari HKEY_USERS.
  • HKEY_LOCAL_MACHINE. Berisi informasi konfigurasi untuk komputer (untuk semua user).
  • HKEY_CLASSES_ROOT. Berisi informasi mengenai program yang digunakan untuk membuka file menggunakan explorer. Merupakan subkey dari HKEY_LOCAL_MACHINE\Software.
  • HKEY_CURRENT_CONFIG. Berisi informasi mengenai profil hardware yang digunakan komputer pada saat startup.
Nilai pada registry entry bisa mempunyai tipe sebagai berikut.
  • REG_BINARY. Data biner mentahan. Biasanya digunakan untuk menyimpan informasi komponen hardware dan ditampilkan dalam format hexadecimal.
  • REG_DWORD. Angka dengan panjang 4 byte.
  • REG_EXPAND_SZ. Tipe string dengan panjang variabel.
  • REG_MULTI_SZ. Multi string.
  • REG_SZ. Tipe string dengan panjang tetap.
  • REG_FULL_RESOURCE_DESCRIPTOR. Merupakan sekumpulan array bersarang yang digunakan untuk menyimpan resource dari komponen hardware atau driver.
Delphi menyediakan unit yang digunakan untuk akses maupun manipulasi registry yaitu unit “Registry.pas”. Beberapa fungsi yang ada mirip dengan fungsi yang digunakan untuk mengakses file INI, seperti WriteInteger, ReadInteger, ReadString. Berikut adalah contoh program yang mengakses registry.

uses Registry;

var
  Reg: TRegistry;
  s: string;
begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey(‘SOFTWARE\Tes’, False) then
    begin
      ShowMessage(‘Sukses membuka key.’);
      s := Reg.ReadString(‘Teks’);
      Reg.WriteInteger(‘Angka’, 1);
    end;
    if Reg.OpenKey(‘SOFTWARE\Coba’, True) then
      ShowMessage(‘Sukses membuat key.’);
  finally
    Reg.Free;
  end;
end.

Tidak ada komentar:

Posting Komentar