Bekerja Dengan Registry

Registry adalah bagian yang sangat vital di dalam Windows. Karena pentingnya, banyak sekali virus dan program hacking yang memanfaatkan registry sebagai bagian dari operasi ilegalnya. Pada tulisan saat ini, saya akan mengajak bermain-main dengan registry sejenak.

Kita langsung saja dengan mendeklarasikan unit Registry pada bagian Uses:

Uses
    Registry;

Tipe data pada registry dapat berupa:
  1. Binary
  2. String
  3. DWord
  4. Boolean
Dengan tipe data yang berbeda, maka penulisan ke registry akan memakai fungsi yang berbeda. Keterangan berikut ini akan menjelaskan cara penulisan masing-masing tipe data tadi.

A. Penulisan Data BINARY

  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg : TRegistry;
        i : integer;
        DataKey : string;

    begin

        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;
  2. Buka Registry yang dimaksud.

    Contoh:

    reg.OpenKey('SubKey',true);

    DataKey :=  "ini mau ditulis";
     

    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Tulis isi dari registry:

    Contoh:

    reg.WriteBinaryData('TempatData',Datakey[1],length(DataKey));
  4. Tutup registry agar tersimpan di Windows

    reg.CloseKey;
  5. Hapus variabel obyek registry;

    FreeAndNil(reg
    );

B. Membaca Data BINARY
  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg          :  TRegistry;
        i              :  integer;
        DataKey :  string;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;
  2. Buka Registry yang dimaksud.

    Contoh:

    reg.OpenKey('SubKey',true);


    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Baca isi dari registry:

    Contoh:

    reg.ReadBinaryData('TempatData', DataKey, sizeof(DataKey));
    ShowMessage(DataKey);

  4. Tutup registry agar tersimpan di Windows

    reg.CloseKey;
  5. Hapus variabel obyek registry;

    FreeAndNil(reg
    );
  
C. Penulisan Data STRING
Cara penulisan adalah sebagai berikut:


  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg : TRegistry;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;

  2. Buka Registry yang dimaksud.

    Contoh:

    OpenKey('SubKey',true);


    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Tulis isi dari registry:

    Contoh:

    WriteString('DataKey','Contoh Isian String Pada Registry');

  4. Tutup registry agar tersimpan di Windows

    CloseKey;
  5. Hapus variabel obyek registry

    FreeAndNil(reg);

D. Membaca Data STRING
  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg          :  TRegistry;
        i              :  integer;
        DataKey, IsiReg :  string;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;
  2. Buka Registry yang dimaksud.

    Contoh:

    reg.OpenKey('SubKey',true);


    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Baca isi dari registry:

    Contoh:

     IsiReg := reg.ReadString('DataKey');
    ShowMessage(IsiReg);

  4. Tutup registry agar tersimpan di Windows

    reg.CloseKey;
  5. Hapus variabel obyek registry;

    FreeAndNil(reg
    );
 
E. Penulisan Data DWORD
Penjelasan dibawah ini adalah tentang penulisan data tipe DWORD di registry dengan mengambil contoh men-disable registry agar tidak bisa diakses.
  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg : TRegistry;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;

  2. Buka Registry yang dimaksud.

    Contoh:

    OpenKey('
    \Software\Microsoft\Windows\CurrentVersion\Policies\System',true);

    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.

  3. Tulis isi dari registry:

    Contoh:

    WriteString('DisableRegistryTools',00000001);

  4. Tutup registry agar tersimpan di Windows

    CloseKey;
  5. Hapus variabel obyek registry dari memory

    FreeAndNil(reg);


F. Membaca Data DWORD
  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg          :  TRegistry;
        i              :  integer;
        DataKey :  integer;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;
  2. Buka Registry yang dimaksud.

    Contoh:

    reg.OpenKey('SubKey',true);


    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Baca isi dari registry:

    Contoh:

    reg.ReadInteger('TempatData');
    ShowMessage(IntTostr(DataKey));

  4. Tutup registry agar tersimpan di Windows

    reg.CloseKey;
  5. Hapus variabel obyek registry;

    FreeAndNil(reg
    );

G. Penulisan Data Boolean

  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg : TRegistry;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;

  2. Buka Registry yang dimaksud.

    Contoh:

    OpenKey('
    SubKey',true);

    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.

  3. Tulis isi dari registry:

    Contoh:

    WriteBool('DataKey',true);

  4. Tutup registry agar tersimpan di Windows

    CloseKey;

  5. Hapus variabel obyek registry dari memory

    FreeAndNil(reg);
 H. Membaca Data Boolean

  1. Instankan obyek bertipe Registry.
    Menginstankan harus didahului dengan mendeklarasikan variabel sebagai TRegistry. Pada contoh dibawah ini, variabel tersebut adalah reg:

    var
        reg          :  TRegistry;
        i              :  integer;
        Isi           :  Boolean;
    begin
        reg := TRegistry.Create;
        reg.RootKey := HKEY_CURRENT_USER;
  2. Buka Registry yang dimaksud.

    Contoh:

    reg.OpenKey('SubKey',true);


    Perintah OpenKey membutuhkan dua parameter. Parameter pertama adalah SubKey dari registry, sedangkan parameter kedua adalah menyatakan, apakah diperbolehkan membuat key yang dimaksud jika key tersebut tidak diketemukan.
  3. Baca isi dari registry:

    Contoh:

    Isi := reg.ReadBool('TempatData');
    if isi = true then
        ShowMessage("Status TRUE")
    else

        ShowMessage("Status FALSE");
  4. Tutup registry agar tersimpan di Windows

    reg.CloseKey;
  5. Hapus variabel obyek registry;

    FreeAndNil(reg
    );

Bekerja Dengan Registry Rating: 4.5 Diposkan Oleh: Good Dreamer

1 comments:

Diberdayakan oleh Blogger.