Pages

Sabtu, 27 November 2010

REGEDIT ( REGistry EDIT)


REGEDIT

 

Registry, dalam platform sistem operasi Microsoft Windows 32-bit, merupakan sebuah basis data yang disusun secara hierarkis yang mengandung informasi mengenai konfigurasi sebuah sistem, mulai dari konfigurasi perangkat keras, perangkat lunak, asosiasi ekstensi berkas dengan aplikasinya hingga preferensi pengguna. Registry merupakan pengganti berkas-berkas konfigurasi *.INI yang digunakan dalam sistem Windows 16-bit (Windows 3.x dan Windows for Workgroups). Registry, pertama kali diperkenalkan di dalam sistem Windows 16-bit sebagai penampung informasi mengenai pemetaan/asosiasi ekstensi berkas dengan aplikasinya, dan kemudian dikembangkan menjadi basis data dengan cakupan yang luas pada sistem-sistem operasi keluarga Windows NT. Registry juga kemudian digunakan pada sistem operasi kelas rumahan: Windows 95, Windows 98 dan Windows ME, tapi memang implementasi yang cukup bagus dari registry terdapat di dalam keluarga sistem operasi Windows NT. Registry dalam Windows 16-bit

Registry dalam sistem Windows 16-bit (dimulai pada Windows 3.x) berguna hanya untuk menyimpan asosiasi ekstensi berkas dengan aplikasinya, serta asosiasi objek OLE di dalam dokumen dengan aplikasinya. Implementasi ini masih terbilang sederhana, karena jika dibandingkan dengan registry dalam Windows NT dan Windows 9x, asosiasi ekstensi berkas dan objek OLE hanya memakan satu anak pohon (subtree) saja, yakni di dalam HKEY_CLASSES_ROOT.
Registry dalam Windows 9x
Dalam sistem operasi Windows 95, Windows 98, dan Windows Millennium Edition, struktur registry secara logis sama dengan struktur registry dalam Windows NT, tapi tidak kompatibel secara fisik. Dalam sistem operasi ini terdapat sebuah anak pohon tambahan, yakni HKEY_DYN_DATA yang dibuat secara dinamis dan digunakan untuk mengukur performa serta melakukan konfigurasi perangkat keras Plug and Play. Windows 9x menyimpan registry di dalam dua buah berkas, yakni %WINDIR%\system.dat dan %WINDIR%\user.dat. System.dat mengandung informasi mengenai sebuah komputer tertentu, sementara user.dat mengandung informasi mengenai sebuah profil milik pengguna. Ketika booting, Windows 9x akan memuat registry ke dalam ruangan kernel di dalam memori fisik.
Registry dalam Windows NT
Registry dalam Windows NT, Windows 2000, Windows XP dan Windows Server 2003 terbagi secara logis ke dalam lima buah anak pohon (subtree), yang setiap pohon tersebut mengandung kumpulan kunci (key) dan anak kunci (subkey) yang disusun secara hierarkis. Susunan ini sama dengan susunan direktori dalam sistem berkas. Sementara itu, secara fisik, registry terdiri atas beberapa berkas yang disebut sebagai hive dan berkas catatan transaksi (transaction log) untuk setiap hive-hive tersebut yang disimpan di dalam direktori %systemroot%\system32\config.
Contoh registry :

1.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer. Langkah registry ini digunakan untuk Menonaktifkan klik kanan pada desktop Windows XP
2.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRu. Langkah registry ini digunakan untuk membersihkan bekas daftar perintah jendela run.
3.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Langkah registry ini digunakan untuk menghalangi perubahan model tampilan control panel.
4.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System. Langkah registry ini digunakan untuk menghalangi akses halaman task manager.
5.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer. Langkah registry ini digunakan untuk Menonaktifkan Menu properties Pada desktop.
6.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Uninstall. Langkah registry ini digunakan untuk menghalangi akses Pada Add Remove Program Pada Windows.
7. HKEY_CLASSES_ROOT\Unknown\Shell. Langkah Registry ini digunakan untuk Mengubah Menu Open Saat Klik Kanan.
8. HKEY_CLASSES_ROOT\Directory\shell. Langkah Registry ini digunakan untuk Mengganti Tulisan Search Pada Menu Konteks.
9. HKEY_CLASSES_ROOT\Folder\Shell. Langkah Registry ini digunakan untuk Mengganti Tulisan Explore Pada Menu Konteks.
10. HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}. Langkah Registry ini digunakan untuk mengganti Nama Dan Info Tips pada Recycle bin di Windows XP.
11. HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer. Langkah Registry ini digunakan untuk menonaktifkan Program di dalam recycle bin.
Jenis data dalam registry
Sebuah value dapat memiliki jenis-jenis data seperti di bawah ini:
  • REG_NONE, yang merupakan sebuah jenis data registry yang tidak didefinisikan sebelumnya. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x00.
  • REG_SZ, merupakan jenis data teks (string) dengan panjang yang tetap (fixed-length string). Semua sistem operasi 32-bit Windows (Windows NT dan Windows 9x) mendukung jenis data registry ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x01.
  • REG_EXPAND_SZ, merupakan jenis data teks/string yang dapat diekspansi. Windows 9x tidak memiliki jenis data ini. Diperlukan editor registry khusus (regedt32.exe) untuk menangani jenis data ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x02.
  • REG_BINARY, merupakan jenis data biner, yang dapat berarti macam-macam (bisa berupa teks/string, atau bilangan). Semua sistem operasi 32-bit Windows (Windows NT dan Windows 9x) mendukung jenis data registry ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x03.
  • REG_DWORD, merupakan jenis data angka 32-bit. Semua sistem operasi 32-bit Windows (Windows NT dan Windows 9x) mendukung jenis data registry ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x04. Terdapat dua jenis implementasi dari jenis data ini, yakni:
    • REG_DWORD_LITTLE_ENDIAN, yang merupakan jenis data REG_DWORD default dalam Windows NT yang dijalankan di atas prosesor Intel x86/x64. Jenis data ini berukuran 32-bit yang disusun dengan menggunakan format little-endian. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x05.
    • REG_DWORD_BIG_ENDIAN, yang merupakan jenis data REG_DWORD yang berukuran 32-bit yang disusun dengan menggunakan format big-endian. Jenis data ini hanya dapat didukung oleh Windows NT yang dijalankan di atas mesin DEC Alpha, MIPS, atau IBM PowerPC, yang memang menggunakan format bilangan big-endian. Windows NT 5.x yang hanya dapat berjalan di atas sistem x86 tidak menangani jenis data ini (terdapat limitasi pada mikroprosesor), meskipun Windows NT 5.x mendukungnya. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x06.
  • REG_MULTI_SZ, merupakan jenis data teks/string yang memiliki banyak baris yang dipisahkan dengan dua buah karakter null (0x00). Windows 9x tidak memiliki jenis data ini.Diperlukan editor registry khusus (regedt32.exe) untuk menangani jenis data ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x07.
  • REG_LINK, yang merupakan symbolic link ke sebuah objek Windows NT dalam ruang nama/namespace objek Windows NT (yang diatur oleh Object Manager Windows NT). Registry Editor default bawaan Windows (regedit.exe, regedt32.exe, dan utilitas command-line reg.exe) tidak dapat menyunting jenis ini. Jenis data ini digunakan secara internal oleh Windows NT saja, dan tidak digunakan oleh aplikasi. Registry dalam Windows 9x tidak memiliki jenis data ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x08.
  • REG_RESOURCE_LIST (Windows NT) atau REG_FULL_RESOURCE_DESCRIPTOR, yang merupakan jenis data registry yang hanya digunakan untuk menyimpan konfigurasi perangkat keras dan driver-nya yang terinstalasi di atas sistem operasi Windows NT. Registry dalam Windows 9x tidak memiliki jenis data ini. Jenis data ini adalah kumpulan larik (array) yang digunakan untuk menyimpan daftar sumber daya (interupsi perangkat keras, Direct Memory Access (DMA), I/O range dan memory range) yang digunakan oleh komponen perangkat keras atau driver. Dibutuhkan registry editor khusus (regedt32.exe) untuk menyunting value dengan jenis data ini. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x09.
  • REG_QWORD, merupakan jenis data angka yang memiliki panjang 64-bit. Jenis data ini hanya terdapat di dalam sistem prosesor 64-bit saja, semacam DEC Alpha, IA-64, atau x64. Jenis data ini secara internal menggunakan tanda pengenal (identifier) 0x12. Sama seperti halnya REG_DWORD, REG_QWORD juga terdapat dua jenis implementasi, yakni little-endian (REG_QWORD_LITTLE_ENDIAN, dengan identifier 0x13) dan big-endian (REG_QWORD_BIG_ENDIAN, dengan identifier 0x14), meskipun secara default format yang digunakan adalah REG_QWORD_LITTLE_ENDIAN. Diperlukan editor khusus untuk menyunting jenis data ini.
Jenis data registry, dapat dirangkum pada tabel berikut:
Jenis data
Identifier
Keterangan
REG_NONE
0x00
Jenis data belum ditentukan
REG_SZ
0x01
Teks/string berukuran tetap
REG_EXPAND_SZ
0x02
Teks/string yang dapat berubah-ubah.
REG_BINARY
0x03
Jenis data biner (dapat berupa apa saja)
REG_DWORD
0x04
Jenis data bilangan dengan ukuran 32-bit
REG_DWORD_LITTLE_ENDIAN
0x05
Jenis data bilangan dengan ukuran 32-bit, dengan format little-endian. Dalam Windows NT 5.x, sama saja dengan REG_DWORD biasa.
REG_DWORD_BIG_ENDIAN
0x06
Jenis data bilangan dengan ukuran 32-bit, dengan format big-endian.
REG_MULTI_SZ
0x07
Jenis data teks/string dengan banyak baris yang dipisahkan dengan dua karakter null (0x00).
REG_LINK
0x08
Symbolic link dengan menggunakan format Unicode ke sebuah objek dalam Windows NT Object Manager.
REG_RESOURCE_LIST
0x09
Digunakan untuk menampung sumber daya perangkat keras.
REG_FULL_RESOURCE_DESCRIPTOR
0x10
Digunakan untuk menampung sumber daya perangkat keras.
REG_RESOURCE_REQUIREMENTS_LIST
0x11
Digunakan untuk menampung kebutuhan sumber daya perangkat keras.
REG_QWORD
0x12
Jenis data bilangan dengan ukuran 64-bit.
REG_QWORD_LITTLE_ENDIAN
0x13
Jenis data bilangan dengan ukuran 64-bit, dengan menggunakan format little-endian.
REG_QWORD_BIG_ENDIAN
0x14
Jenis data bilangan dengan ukuran 64-bit, dengan menggunakan format big-endian.

Struktur registry

Struktur registry agak mirip dengan struktur direktori dalam sistem berkas. Selain itu, registry juga dapat diakses dengan menggunakan sintaksis yang sama dengan cara mengakses berkas, dengan menggunakan karakter garis miring terbalik (backslash) untuk menandakan tingkatan hierarkis. Susunannya adalah seperti <subtree>\<key>\<subkey...>. Sebagai contoh, My Computer\HKEY_LOCAL_MACHINE\Software\Microsoft\Windows, yang merujuk kepada sebuah subkey yang memiliki nama "Windows" yang terdapat di dalam subkey Microsoft, yang terdapat di dalam key dengan nama Software, yang terdapat di dalam subtree HKEY_LOCAL_MACHINE.
Setiap key dan subkey tersebut dapat memiliki nilai yang dapat ditentukan atau nilai default, yang disebut sebagai Value. Akan tetapi, cara mengakses value tidaklah sama dengan cara mengakses berkas dalam sistem berkas, mengingat nama value dapat mengandung karakter backslash yang dapat menjadi ambigu ketika menggunakan cara baca seperti halnya mengakses sistem berkas. Adalah fungsi-fungsi dalam Windows 32-bit Application Programming Interface/API (Win32 API) yang dapat melakukan query dan manipulasi terhadap value-value registry, yang dilakukan dengan cara mengambil nama value secara terpisah dari path key yang merupakan parent key. Setiap value memiliki jenis-jenis datanya masing-masing yang dapat dilihat pada bagian berikut.

0 comments:

Posting Komentar