Troubleshooting and Configuring the Windows NT/95 Registry
- D -
A Closer Look at HKEY_CURRENT_CONFIG for Windows NT
At startup, when multiple profiles are used in NT, the Last Known Good menu is
automatically engaged, giving you the option of selecting which profile you would
like to use. HKEY_CURRENT_CONFIG is the handle key representing the current
hardware profile chosen at startup.
Depending on the choice of profiles, one of the Registry hardware profile entries
will be chosen. When that profile is loaded into the system, it will be loaded into
both HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Hardware Profiles\Current and
also into HKEY_CURRENT_CONFIG. Figure D.1 shows the results of the mapping.
Figure
D.1. HKEY_LOCAL_COMPUTER
maps information directly to HKEY_CURRENT_CONFIG.
After the system is started, any change to either location automatically updates
the other. HKEY_CURRENT_CONFIG is used to make access to the configuration
information easier for programmers.
HKEY_CURRENT_CONFIG includes all of the details of the profile that is
actually current in the system. The choice made during startup affects which of the
two (or more) hardware profiles is current. For example, if Profile 0002 had been
chosen, all of the Profile 0002 information would have been mapped into these keys.
All of the settings in this appendix appear in the following format:
Key Name
Full path=Handle Key\Keyname
Description, specific information, values
Second-Level Key Name
Full path=Handle Key\Keyname\Keyname
Description, specific information, values
Third-Level Key
Name
Full path=Handle Key\Keyname\Keyname\Keyname
Description, specific information, values
Additional Level
Key Names
Full path=Handle Key\Keyname\Keyname\Keyname\Keyname(\Keyname)
Description, specific information, values
Software
HKEY_CURRENT_CONFIG\Software
Without any software difference between the available profiles, there is nothing
listed here. If the selected profile included software specific to hardware that
was only present during this profile, it would be listed here. That is extremely
rare. In nearly all cases, the Software entry is here for future expansion
possibilities, particularly when full Plug and Play is implemented in Windows NT.
System
HKEY_CURRENT_CONFIG\System
This key holds all the subkeys for settings that are unique to the currently installed
profile.
CurrentControlSet
HKEY_CURRENT_CONFIG\System\CurrentControlSet
This key holds subkeys for Control, Enum, and Services.
Control
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Control
Availability of the Control Panel functions might be different depending on the
hardware activated. If there is a difference, it is listed here.
Class
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Control\Class
Different icons for the Control Panel are listed here if necessary.
Enum
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Enum
This key holds information about additional buses that might be available in a
hardware profile. For example, a docking station that includes a separate bus would
be listed and configured here.
Services
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Services
Any differences in loaded drivers based on the hardware profile are listed as
subkeys to this key.
s3
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Services\s3
This video driver is different because it can run a higher default resolution
with a different monitor. Those settings are in the following key:
HKEY_CURRENT_CONFIG\System\CurrentControlSet\Services\s3\Device0
Summary
HKEY_CURRENT_CONFIG allows software and device-driver programmers to
easily update the Registry, without concern for multiple profile information. The
same data is in HKEY_LOCAL_MACHINE, and any Registry change will update
both locations simultaneously.
|