The Windows XP registry is
composed of 5 main branches. These separate the data stored in the registry into
five distinct areas. Within these branches are keys, equivalent to folders,
which hold subkeys and values.
HKEY_CLASSES_ROOT: This branch holds
all the information Windows needs for internal functions such as OLE (Object
Linking and Embedding, the ability to copy and paste between different programs
and documents) and drag-and-drop. It is also the database for file associations,
which is how the OS determines what program opens when you double click a
specific file type. This branch is by far the least user-friendly and the least edited of the six.
Best to leave it alone then.
HKEY_CURRENT_USER: Contains a variety of
configuration settings for the user that is currently logged in only. If you
have made customizations to Windows, such as a new desktop, or a font change, it
will be stored here. Any Windows or application setting that is specific to your
user can be found within this branch of the registry. As such, there are many
customization options here. HKEY_CURRENT_USER is actually a sub-set of the
HKEY_USERS branch, specific to the currently logged in user
only.
HKEY_LOCAL_MACHINE: Probably the most edited
registry branch. This contains configuration settings that are specific to the
computer and the software installed on it, but independent of users. As such,
any changes made here will apply to any user that is logged in. The SOFTWARE key
within this branch contains configuration settings for all installed software,
including Windows itself. Look into SOFTWARE \ Microsoft \ Windows \
CurrentVersion for many configuration options.
HKEY_USERS: Like the CURRENT_USER branch, this
contains individual configuration settings specific to individual users.
However, it contains these options for all users that have been created. The
users are identified by their SID (Security Identifier) number. This unique
value is assigned to each user at creation.
HKEY_CURRENT_CONFIG: This is connected to
HKEY_LOCAL_MACHINE, in much the same way that the CURRENT_USER branch connects
to HKEY_USERS. It specifies hardware and software settings that apply to all
users, for a given hardware profile.
Inside each of these branches
are 'keys' represented by folder icons, that hold subkeys and the values that
make up the registry's data.
The values themselves tend to
be one of five main types: