Windows Vista Root Keys and What They Do - dummies

By Woody Leonhard

The Windows Registry may look like a file or a database, but it’s really a conglomeration of many different pieces of information drawn from several places. You can change some of the entries, but other entries are generated by Vista internally and are off limits. If you’re going to work with the Windows Vista Registry, it’s important to recognize Vista’s root keys and understand what they do.

No matter how much you feel the temptation, it’s never a good idea to go into the Registry to “fix” something if you don’t know precisely what needs fixing and how. Changing Registry settings willy-nilly to try to fix random problems only lands you in hot water.

The Registry has five main keys, called high-level keys, root keys and/or predefined keys and/or hives. Those five main keys have very long names (see the following table), but the common abbreviations are HKCR, HKCU, HKLM, HKU, and HKCC.

Vista’s High-Level Keys
Abbreviation Means What It Does What This Means to You
HKCR HKEY_CLASSES_ROOT Associates filename extensions (such as .doc and .exe) with
the actions Windows is supposed to take when, for example, you
double-click a file. Also associates types of objects (folders,
drives) with actions Windows takes when you double-click them.
If you double-click an MP3 file and the wrong program shows up,
something is messed up in this Registry key. Don’t try to fix
the key directly. Use Windows Explorer’s File Name
Associations dialog box.
HKCU HKEY_CURRENT_USER Controls many settings for the currently logged-on user, from
the user’s name to his or her desktop background, and tens of
thousands of additional Windows entries.
You can make very detailed changes to your Windows desktop by
editing entries in this key. Just make sure you know exactly what
you’re doing.
HKLM HKEY_LOCAL_MACHINE Thousands of settings that apply to all users, no matter who is
logged on to the PC at any given moment.
Program settings for all users frequently go in here.
HKU HKEY_USERS A collection of all the HKCU entries for everyone who has ever
logged on to the PC, in addition to a special entry called
.DEFAULT, which is copied when a new user is added.
This is where you can change desktop settings for all
HKCC HKEY_CURRENT_CONFIG A tiny key that describes the current hardware configuration
and a few basic system settings.
You can change only a few of these settings, primarily the ones
associated with basic system functions.

In the Registry, each high-level key has keys beneath it. For example, as you can see in the following figure, the HKCUIdentities key contains seven values. The name of the sixth value is Last Username, and its data is Main Identity.

Inside the HKCUIdentities key.
Inside the HKCUIdentities key.