The HKEY_CLASSES_ROOT registry key contains data that associates file types with programs and contains configuration data for automation, like Visual Basic programs and COM objects.
In Windows NT 4.0 and earlier, the HKEY_CLASSES_ROOT registry key was just an alias for HKEY_LOCAL_MACHINE\SOFTWARE\Classes.
Newer versions of Windows NT support per-user class registration, merging the content of HKEY_CLASSES_ROOT from both HKEY_CURRENT_USER\SOFTWARE\Classes and HKEY_LOCAL_MACHINE\SOFTWARE\Classes.
NOTE: If a Value Name appears in both HKEY_CURRENT_USER\SOFTWARE\Classes and HKEY_LOCAL_MACHINE\SOFTWARE\Classes, the value from HKEY_CURRENT_USER\SOFTWARE\Classes is posted to HKEY_CLASSES_ROOT.
NOTE: If you create a sub-key in HKEY_CLASSES_ROOT, it will also appear in HKEY_LOCAL_MACHINE\SOFTWARE\Classes.
NOTE: If you create an entry in HKEY_CLASSES_ROOT and the sub-key already exists in HKEY_CURRENT_USER\SOFTWARE\Classes, then the entry will appear in HKEY_CURRENT_USER\SOFTWARE\Classes, else it will appear in HKEY_LOCAL_MACHINE\SOFTWARE\Classes.