Tuesday, October 13, 2009

Windows Registry : At a Glance

I always tried to keep all the information about the subject I am discussing. Now, I want to discuss Registry Cleaner and Registry editor. But before that i will give a brief introduction to Windows Registry.

Windows registry is first introduced in Windows 3.1 and all later versions of windows add it as part of Operating System.

Registry :
Microsoft's Definition:
"A central hierarchical database used in Microsoft Windows 98, Windows CE, Windows NT, and Windows 2000 used to store information that is necessary to configure the system for one or more users, applications and hardware devices. "
The registry is a database in Windows that contains important information about system hardware, installed programs and settings, and profiles of each of the user accounts on your computer. Windows continually refers to the information in the registry. That means registry contains all the information about your computer including both hardware and software.
Suppose, whenever you install a software or even update your system or software or create or delete or modify a user account, all the changes will took place corresponding registry values.
You can manually change the values of registry by typing 'regedit' in 'run' dialog box with administrative privilage.but it is strongly recommanded that you should not change the values of registry unless, you have complete knowledge of that registry entry. i recommand that you should back up registry before you change the values of registry entries.
Windows also provides GUI called 'Control Panel' to interact with the registry.
Architecture of registry :
Registry contains two basic elements :
1) Values :Values are name and data pair stored in the database. Values name may contain backslashes but it is not suggested to use because keys (Anither registry component already have backslshes). Values are of different type :
a) REG_NONE---------------->No type
b) REG_SZ-------------------->A string value
c) REG_EXPAND_SZ----------->An "expandable" string value that can contain environment variables
d) REG_BINARY----------------->Binary data (any arbitrary data)
and many more.
2) Keys :
Keys are similar to folders. Each key has some values and in addition to this Subkeys and sub-subkeys. Keys are referenced by a same syntax used to refer Directory path name. There are six root keys :
1) HKEY_CLASSES_ROOT : Stores information about registered applications.
2) HKEY_CURRENT_USER : Stores settings that belongs to current logged in user.
3) HKEY_LOCAL_MACHINE : Stores information that belongs to local computer.
4) HKEY_USERS : Contains subkeys that are belonging to HKEY_CURRENT_USER for each user profile actively loaded
5)HKEY_CURRENT_CONFIG : Contains information generated at boot time which is rewrite at every boot.
6) HKEY_DYN_DATA : does not used after windows Me.

Click here to read about Registry Cleaner