Appendix A - Windows NT Registry

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

In Windows NT, configuration information is centrally stored in a single database called the registry. The registry replaces the .ini, .sys, and .com configuration files used in Windows for MS-DOS and Microsoft LAN Manager.

This appendix provides an overview of registry structure, describes how Windows NT components use the registry, provides an overview of the Registry Editor and Windows NT Diagnostics, and describes how .ini files are mapped to the registry.

For more detailed information about the registry and specific registry keys, see the Windows NT Workstation Resource Kit version 4.0.

Registry Structure

The registry is a database organized in an hierarchical structure. The registry is comprised of subtrees and their keys, hives, and value entries. A key* *can also contain additional subkeys. 

Registry Hierarchy

The registry subtrees are divided into per-computer and per-user databases. The per-computer information includes information about hardware and software installed on the specific computer. The per-user information includes the information in user profiles, such as desktop settings, individual preferences for certain software, and personal printer and network settings.

Cc751456.xcp_p01(en-us,TechNet.10).gif

The subtrees in the Windows NT registry 

The following table identifies and defines the registry subtrees.

Root key name

Description

HKEY_LOCAL_MACHINE

Contains information about the local computer system, including hardware and operating system data such as bus type, system memory, device drivers, and startup control data.

HKEY_CLASSES_ROOT

Contains object linking and embedding (OLE) and file-class association data (equivalent to the registry in Windows for MS-DOS).

HKEY_CURRENT_USER

Contains the user profile for the user who is currently logged on, including environment variables, desktop settings, network connections, printers, and application preferences.

HKEY_USERS

Contains all actively loaded user profiles, including HKEY_CURRENT_USER, which always refers to a child of HKEY_USERS, and the default profile. Users who are accessing a server remotely do not have profiles under this key on the server; their profiles are loaded into the registry on their own computers.

HKEY_CURRENT_CONFIG

Contains information about the hardware profile used by the local computer system at startup. This information is used to configure settings such as the device drivers to load and the display resolution to use.

Each root key name begins with HKEY_ to indicate to software developers that this is a handle that can be used by a program. A handle is a value used to uniquely identify a resource so that a program can access it.

Hives and Files

The registry subtree is divided into parts called hives (after their resemblance to the cellular structure of a beehive). A hive is a discrete body of keys, subkeys, and values that is rooted at the top of the registry hierarchy. A hive is backed by a single file and a .log file which are in the %SystemRoot%\system32\config or the %SystemRoot%\profiles\username folders. By default, most hive files (Default, Sam, Security, Software, and System) are stored in the %SystemRoot%\system32\config folder. The Ntuser.dat and Ntuser.dat.log files are stored in the %SystemRoot%\profiles\username folder. The %SystemRoot%\profiles folder contains the user profile for each user of the computer.

Cc751456.xcp_p02(en-us,TechNet.10).gif

Tip By default, when viewing files using Windows NT Explorer, file extensions are hidden.

The following table shows the standard hives for a computer running Windows NT.

Registry hive

File names

HKEY_LOCAL_MACHINE \SAM

Sam and Sam.log

HKEY_LOCAL_MACHINE \SECURITY

Security and Security.log

HKEY_LOCAL_MACHINE \SOFTWARE

Software and Software.log

HKEY_LOCAL_MACHINE \SYSTEM

System and System.log

HKEY_CURRENT_USER

Ntuser.dat and Ntuser.dat.log

HKEY_USERS.DEFAULT

Default and Default.log

Registry Size Limits 

The total amount of space that can be consumed by Registry data (hives) is restricted by the* registry size limit*, which is a kind of universal maximum for registry space that prevents an application from filling the paged pool with registry data. Registry size affects both the amount of paged pool the registry can use and the amount of disk space used by the registry.

To view or set the value for RegistrySizeLimit, first create the key using the following path:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \RegistrySizeLimit

The registry size can also be viewed and set using the System option in Control Panel. See the Virtual Memory box in the Performance tab. For information about how to set the registry size using Control Panel, see "Virtual Memory" or "Changing the Virtual-Memory Paging File" in Help.

The registry size should be changed only if the computer is either a primary or backup domain controller for a large network because all user accounts are stored in the registry.

RegistrySizeLimit must have a type of REG_DWORD and a data length of 4 bytes, or it will be ignored. By default, the registry size limit is 25 percent of the size of the paged pool.

Setting a large value for RegistrySizeLimit does not cause the system to use that much space unless it is actually needed by the registry. A large value also does not guarantee that the maximum space will actually be available for use by the registry.

For more details about RegistrySizeLimit, see the Windows NT Workstation Resource Kit version 4.0*.* 

Value Entries in the Registry Keys

Each registry key can also contain data items called value entries. Keys are analogous to directories, and value entries are analogous to files.

A value entry has three parts: the name of the value, the data type of the value, and the value itself, which can be data of any length. The three parts of value entries always appear in the following order.

Cc751456.xcp_p03(en-us,TechNet.10).gif 

Data types, such as REG_SZ or REG_EXPAND_SZ, describe the format of the data which can be up to 1 MB. Data types from 0 to 0x7fffffff are reserved for definition by the system, and applications are encouraged to use these types. Data types from 0x80000000 to 0xffffffff are reserved for use by applications.

The following table lists the data types currently defined and used by the system.

Data type

Description

REG_BINARY

Binary data. Most hardware component information is stored as binary data and can be displayed in Registry Editor in hexadecimal format or displayed via the Windows NT Diagnostics program (WINMSD.EXE)1 in an easy-to-read format. For example:
Component Information : REG_BINARY : 00 00 00...

REG_DWORD

Data represented by a number that is 4 bytes long. Many parameters for device driver and services are this type and can be displayed in Registry Editor in binary, hexadecimal, or decimal format. For example, entries for service error controls are this type:
ErrorControl : REG_DWORD : 0x1

REG_EXPAND_SZ

An expandable data string, which is text that contains a variable to be replaced when called by an application. For example, for the following value, the string %SystemRoot% will be replaced by the actual location of the directory containing the Windows NT system files:
File : REG_EXPAND_SZ : %SystemRoot%\file.exe

REG_MULTI_SZ

A multiple string. Values that contain lists or multiple values in human readable text are usually this type. Entries are separated by NULL characters. For example, the following value entry specifies the binding rules for a network transport:
bindable : REG_MULTI_SZ : dlcDriver dlcDriver non non 50

REG_SZ

A sequence of characters representing human readable text. For example, a component's description is usually this type:
DisplayName : REG_SZ : Messenger

1 For more information about Registry Editor and Windows NT Diagnostics, see "Using Registry Editor" and "Using Windows NT Diagnostics to View System Configuration Data" later in this appendix.

How Windows NT Components Use the Registry

The following figure shows how various Windows NT components and applications use the registry.

Cc751456.xcp_p04(en-us,TechNet.10).gif 

How components and applications use the registry 

  • Setup. Both the Windows NT Setup program and other setup programs (for applications or hardware) add configuration data to the registry. For example, new information is added when you install a new small computer system interface (SCSI) adapter or change the settings for your display. Setup also read information from the Registry to determine if the prerequisite components have been installed.

  • Recognizer. Each time you start a computer running Windows NT, the Hardware Recognizer places hardware configuration data in the registry. This data includes a list of hardware detected in your system. On x86-based computers, hardware detection is done by the Hardware Recognizer (Ntdetect.com) and the Windows NT Kernel (Ntoskrnl.exe) programs. On RISC-based computers, this information is extracted from the ARC firmware.

  • Windows NT Kernel. During system startup, the Windows NT Kernel extracts information from the registry, such as which device drivers to load and their load order. The Ntoskrnl.exe program also passes information about itself (such as its version number) to the registry.

  • Device drivers. Device drivers send and receive load parameters and configuration data from the registry. This data is similar to what you might find on the DEVICE= lines in the Config.sys file in the MS-DOS operating system. A device driver must report system resources that it uses (such as hardware interrupts and direct memory access (DMA) channels) so that the system can add this information to the registry. Applications and device drivers can access this registry information to provide users with smart installation and configuration programs.

  • Administrative tools. The options and administrative tools in Windows NT (such as those provided in Control Panel and in the Administrative Tools (Common) folder) enable you to modify configuration data indirectly.

    Registry contents can be directly viewed, modified, or both using one of the following tools:

    • The Registry Editor is helpful for viewing and occasionally making detailed changes to the system configuration. For more information about Registry Editor, see "Using Registry Editor" later in this appendix.

    • The System Policy Editor enables you to view and modify certain registry keys. The System Policy Editor also displays the data in a much more user-friendly manner. For more information about the System Policy Editor, see "System Policy" in Chapter 3, "Managing User Environments."

    • The Windows NT Diagnostics program (Winmsd.exe) also provides a view of configuration information stored in the registry. Windows NT Diagnostics can read and display registry data about the system resources used by drivers. For more information about using the Windows NT Diagnostics program, see "Using Windows NT Diagnostics to View System Configuration Data" later in this appendix or see the Windows NT Workstation Resource Kit version 4.0.

    Caution Although it is possible to modify the contents of the registry directly, it is recommended that the tools (especially Registry Editor) be used by system administrators only.

Using Registry Editor

Cc751456.xcp_p05(en-us,TechNet.10).gif 

You can use the Registry Editor to view registry entries for the various components in Windows NT. You can also use Registry Editor to modify or add registry entries.

Caution When making changes to the system configuration, it is best to use Control Panel or the applications in the Administrative Tools (Common) folder. Otherwise you can impair or disable Windows NT.

The Registry Editor application, Regedt32.exe, does not appear in any default folders It is installed automatically in your %SystemRoot%\system32 folder. Click Run on the Start menu or switch to a command prompt and type regedt32.

For information about how to start Registry Editor, see "Understanding Registry Editor" in Registry Editor Help.

Viewing the Registry

Registry Editor displays the subtrees of the registry. The hierarchical structure that appears in Registry Editor is similar to the hierarchical directory structures of Windows NT Explorer.

Cc751456.xcp_p06(en-us,TechNet.10).gif 

Your ability to make changes to the registry using Registry Editor depends on your access permissions. In general, you can make the same kinds of changes in Registry Editor as your permissions allow for Control Panel or other administrative tools.

For information about security and backup measures to take with the registry and other issues, see the Windows NT Workstation Resource Kit version 4.0.

Registry Editor Commands

As shown in the following figure, Registry Editor displays data in two panes. The value entries in the right pane are associated with the selected key in the left pane.

Cc751456.xcp_p07(en-us,TechNet.10).gif 

You can use the mouse or commands to manipulate the windows and panes in the Registry Editor in the same way as in the Windows NT Explorer. For example:

  • Double-click a key name to expand or collapse an entry. Or click commands from the View and Tree menus to control the display of a selected key and its data.

  • Use the mouse or arrow keys to move the vertical split bar in each window to control the size of the left and right panes.

  • Click Tile or Cascade from the Window menu to arrange the Registry Editor windows.

  • Click Auto Refresh from the Options menu to update the display continuously. You can also click one of the Refresh commands from the View menu to update the display of registry information when Auto Refresh is turned off.

    Tip Turning off Auto Refresh improves the performance of Registry Editor.

The following table shows some keyboard methods for managing the display of data in each Registry Editor window.

Procedure

Keyboard action

Expand one level of a selected registry key.

Press ENTER. 

Expand all of the levels of the predefined handle in the active Registry window.

Press CTRL + *.

Expand a branch of a selected registry key.

Press the asterisk (*) key on the numeric keypad.

Collapse a branch of a selected registry key.

Press ENTER or the minus (-) sign on the numeric keypad.

Registry Editors

The Windows NT Setup program installs two versions of Registry Editor: the Windows NT Registry Editor (Regedt32.exe) and, either the Windows version 3.x version of Registry Editor or the Windows 95 version, which are both named Regedit.exe.

The Windows NT Registry Editor is installed in the %SystemRoot%\system32 directory. The Windows 3.x version (16-bit), or the Windows 95 version (32-bit) of Registry Editor is installed in the %SystemRoot% directory.

Setup installs the Windows 3.x version of Registry Editor if one of the following occurs:

  • If Setup detects that it is installing Windows NT version 4.0 in a directory that contains Windows version 3.x.

  • If Setup detects that it is upgrading Windows NT version 3.x that was originally installed in a directory that contained Windows version 3.x.

In all other cases, Setup installs the Windows 95 version of Registry Editor in the %SystemRoot% directory.

Systems installed with the Windows 3.x version of Registry Editor can still use the Windows 95 Registry Editor. To use the Windows 95 Registry Editor, copy the following files from the Windows NT Server version 4.0 compact disc: Regedit.exe, Regedit.hlp, and Regedit.cnt.

Caution Do not copy Windows 95 Registry Editor files to the %SystemRoot% directory because they can overwrite the Windows version 3.x Registry Editor files and prevent users from installing applications when running Windows version 3.x. The Windows 95 registry files can be copied to any other directory.

Using Windows NT Diagnostics to View System Configuration Data

You can also use Windows NT Diagnostics to view configuration information stored in the registry. This is the recommended tool to browse for system information. It is located in the Administrative Tools (Common) folder.

Tip You cannot edit value entries using Windows NT Diagnostics, so the registry contents are protected while you browse for information. However, you can create reports and save and print them to use the values in the registry.

Initialization Files and the Registry

The registry is analogous to the initialization (.ini) files used under Windows for MS-DOS, with each key in the registry similar to a bracketed heading in an .ini file and entries under the heading similar to values in the registry. However, registry keys can contain subkeys, whereas .ini files do not support nested headings. Registry values can also consist of executable code rather than the simple strings representing values in .ini files. And unlike .ini files, individual preferences for multiple users of the same computer can be stored in the registry.

Although the registry replaces the .ini files used in versions of Microsoft Windows created for MS-DOS, some .ini files still appear in the Windows NT system directory. Also, applications created for 16-bit Microsoft Windows must still be able to read and write .ini values that were previously stored in the Win.ini or System.ini file.

This section describes how .ini files and other configuration files are used under Windows NT and how these values are stored in the registry.

  • How Windows NT uses MS-DOS configuration files

  • How .ini files are mapped to the registry

  • Microsoft OS/2 version 1.x entries in the registry

  • POSIX entries in the registry

Note Although Microsoft encourages using registry entries instead of .ini files, some applications (particularly 16-bit Windows-based applications) continue to use .ini files. Windows NT supports .ini files solely for compatibility with 16-bit Windows-based applications and with related tools (such as Setup programs). Some form of the Autoexec.bat and Config.sys files also still exist to provide compatibility with applications created for MS-DOS and Windows 3.1.

For details about how Windows NT uses .ini files in conjunction with the Registry, see the Windows NT Workstation Resource Kit version 4.0.

How Windows NT Uses MS-DOS Configuration Files

Windows NT stores and checks the configuration information in the registry. Windows for MS-DOS involves synchronization between multiple configuration files which start the system, connect to the network, and run applications.

Cc751456.xcp_p08(en-us,TechNet.10).gif 

Data in the Windows NT Registry

During system startup, Windows NT adds Path, Prompt, and Set commands from the C:\Autoexec.bat file to the Windows NT environment variables and then ignores the remainder of C:\Autoexec.bat and C:\Config.sys. (If these files are not present when you install Windows NT, the Setup program creates them.)

For a RISC-based computer, default Autoexec.nt and Config.nt files are created.

The path and other Windows NT environment information are stored under the following registry key:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \Session Manager\Environment

When an MS-DOS – based application is started, Windows NT runs the files specified in the application's PIF or the Autoexec.nt and Config.nt files in the %SystemRoot%\system32 directory. Changes made to these files take effect as soon as the file is saved and as soon as a new MS-DOS – based application that uses the file is started. You do not need to restart your system after changing the *.nt files.

File

Use in Windows NT

C:\Autoexec.bat

Path and environment variables are added to the Windows NT environment at system startup.

C:\Config.sys

Not used by Windows NT.

Autoexec.nt and Config.nt in %SystemRoot%\system32

Used every time an MS-DOS-based application is run with the _Default.pif. (Custom *.nt files can be created and used when starting an application from another PIF.)

Use the Windows NT Diagnostics program to view the contents of the Autoexec.nt files and the Config.nt files by clicking Run on the Windows NT Diagnostics File menu. Select View autoexec.nt or View config.nt. You can edit the contents of these files using Notepad.

Windows NT ignores the Autoexec.bat and Config.sys files for starting applications and initializing drivers. To have an application run automatically when you start Windows NT, drag an icon for the application to the Startup folder, as described in Windows NT Server Start Here. For a service or driver, use the Services option in Control Panel to define the startup type. The Services option settings are saved as the Start value in the service's subkey under HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services in the registry.

VDM Sessions

Each MS-DOS–based and 16-bit Windows-based application runs in a Windows NT virtual MS-DOS machine (VDM). Windows NT includes the necessary virtual device drivers (VDDs) for the mouse, keyboard, printer, COM ports, and network support. The VDDs are loaded into every VDM based on values stored in the registry. Information about VDDs is found in the following registry path:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \VirtualDeviceDrivers

Changes to the VDD entries are managed automatically by the system when you add a device driver using the options in Control Panel.

Windows for MS-DOS on Windows NT

Windows NT is a 32-bit environment, and Windows 3.x for MS-DOS is a 16-bit environment. For a 16-bit Windows-based application, Windows NT runs the application using a VDM and VDDs. This process is called WOW (for Win16 on* *Win32). Using a Win16 VDM, Windows NT translates Windows 3.1-based application calls in standard mode for RISC-based computers and in 386 enhanced mode for x86 based-computers.

Control parameters for WOW startup and for the WOW application environment are found under the following registry path:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \WOW

The settings in this key are maintained automatically by the system and should not require manual changes.

The environment settings equivalent to the System.ini file for Windows 3.x are found in the following registry path:

HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft \Windows NT\CurrentVersion\WOW

The WOW subkeys have the same names as headings in the System.ini file, and the values are the same items contained in the old System.ini file. For details about these entries, see the Regentry.hlp file on the Windows NT Workstation Resource Guide compact disc.

How .ini Files are Mapped to the Registry

If you install Windows NT as an upgrade over Windows 3.1, all settings from the various initialization files (including Control.ini, Progman.ini, System.ini, Win.ini, Winfile.ini) are copied into the registry. To see where the Windows initialization files are mapped in the registry, view the subkeys and value entries under the following path:

HKEY_Local_Machine \SOFTWARE \Microsoft
\Windows NT\CurrentVersion\IniFileMapping

When you install an application created for 16-bit Microsoft Windows, the application's Setup program creates its own .ini file or creates entries for the Win.ini or System.ini file in the same way that it does for any versions of Windows for MS-DOS. These entries are not updated in the registry because these applications do not know how to access the Windows NT registry. For this reason, basic System.ini, Win.ini, and Winfile.ini files appear in the %SystemRoot% directory in Windows NT.

If a Windows-based application tries to write to Win.ini, System.ini, or any other section listed in the IniFileMapping key, and if the application uses the Windows NT registry APIs, the information is stored in the registry. If the application writes to other sections of the .ini file or tries to open the .ini file directly without using the Windows NT registry APIs, the information is saved in an .ini file.

To find mapping information in the HKEY_LOCAL_MACHINE \Software key, the system looks up the filename.ext of the initialization file. If a match is found, the system looks under the mapped key for the specific application name and a variable name. If necessary, the system continues to look for keys whose value entries are the variable names. If no mapping for the application name or file name is found in the registry, the system looks for an .ini file. The system then reads and writes the file contents to the key.* *

Tables in the following section show where system settings are saved in the registry in comparison to initialization files used with Windows 3.1 for MS-DOS.

In the tables, and in the entries in the IniFileMapping key, the following symbols are used.

Symbol

Description

! 

Forces all writes to go to both the registry and to the .ini file on disk.

# 

Causes the registry value to be set to the value in the Windows 3.1 .ini file whenever a new user logs in for the first time after Setup, if Windows NT was installed on a computer that had Windows 3.1 already installed.

@ 

Prevents any reads from going to the .ini file on disk if the requested data is not found in the registry.

USR

Stands for HKEY_CURRENT_USER, and the text after the prefix is relative to that key.

SYS

Stands for HKEY_LOCAL_MACHINE \Software, and the text after the prefix is relative to that key.

Win.ini Settings in the Registry

The following table describes where you can view or edit registry entries equivalent to a Win.ini file.

WIN.INI section

Registry path

Description

[colors]

#USR\Control Panel\Colors1

Defines colors for the Windows display as set using the Display icon in Control Panel.

[compatibility]

#SYS...\Compatibility3

[desktop]

#USR\Control Panel\Desktop1

Specifies appearance of the desktop as set using the Display icon in Control Panel.

[embedding]

#SYS...\Embedding3

Lists the server objects used in object linking and embedding (OLE); created during software Setup.

[extensions]

#USR...\Extensions2

Associates types of files with applications as set by double-clicking the program in the Windows NT Explorer.

[fonts] and [fontSubstitutes]

#SYS...\Fonts and \FontSubstitutes3

Describes the screen font files loaded by Windows as set using the Display icon in Control Panel.

[intl]

#USR\Control Panel\International1

Describes items for languages and locales as set using the Regional Settings icon in Control Panel.

[mci extensions]

SYS...\MCI Extensions3

Associates file types with Media Control Interface devices as set by double-clicking the file in the Windows NT Explorer.

[network]

USR...\Network\Persistent Connections2; network printers in HKEY_LOCAL_MACHINE
SYSTEM\Control\Print

Describes network printer port settings as set using the Printers folder and the persistent network connections as set using Map Network Drive.

[ports]

SYS...\Ports3

Lists all available printer and communications ports as set using the Ports icon in Control Panel.

[printerPorts] and [devices]

SYS...\PrinterPorts and \Devices3

Lists active and inactive output devices to be accessed by Windows as set using the Printers folder.

[sounds]

#USR\Control Panel\Sounds1 

Lists the sound files assigned to each system event as set using the Sounds icon in Control Panel.

[TrueType]

#USR...\TrueType2

Describes options for using TrueType fonts as set using the Fonts icon in Control Panel.

[Windows Help]

USR\Software\Microsoft\Windows Help1

Lists settings for the Help window as set using the mouse or menus in any Help window.

[Windows]

#SYS...\Winlogon3

Specifies the Windows environment and user startup options as set using the Display, Keyboard, and Mouse icons in Control Panel.

1 Full path = HKEY_CURRENT_USER
2 Full path = HKEY_CURRENT_USER \SOFTWARE \Microsoft \Windows NT\CurrentVersion
3 Full path = HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft \Windows NT\CurrentVersion

System.ini Settings in the Registry

When you install Windows NT, entries from a Windows for MS-DOS System.ini file are preserved under the following path:

HKEY_LOCAL_MACHINE \Software \Microsoft \Windows NT\CurrentVersion\WOW

The following table describes where you can view or edit entries for similar purposes in Windows NT. These entries are used by applications that look for values in the System.ini file.

System.ini section

Registry path

Description

[boot] and [boot.description]

#SYS...\WOW\Boot and \Boot.description3; replaced by...CurrentControlSet\Control

Lists drivers and Windows modules as set using the System icon in Control Panel.

[drivers] 

Replaced by #SYS...\Drivers323

Contains a list of aliases (or names) assigned to installable driver files as set using the Multimedia and Devices icons in Control Panel.

[keyboard] 

#SYS...\WOW\Keyboard3;#USR\Keyboard Layout1

Contains information about the keyboard as set using the Regional Settings icon in Control Panel or identified by the Hardware Detector.

[mci] and [mci32]

Replaced by #SYS...\MCI and \MCI323 and #SYS...\Drivers.desc3

Lists Media Control Interface (MCI) drivers as set using the Multimedia icon in Control Panel.

[NonWindows App] 

#SYS...\WOW\NonWindowsApp3

Contains information used by non-Windows-based applications as defined in PIFs for specific applications or in Config.nt.

[standard] 

Standard in #SYS...\WOW3

Contains information used by Windows for MS-DOS in standard and 386 enhanced mode. All memory management is handled automatically by Windows NT.

1 Full path = HKEY_CURRENT_USER
2 Full path = HKEY_CURRENT_USER \SOFTWARE \Microsoft \Windows NT\CurrentVersion
3 Full path = HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft\Windows NT\CurrentVersion

Other Initialization File Settings in the Registry

The following table describes where you can view or edit registry entries equivalent to Control.ini, Progman.ini, and Winfile.ini entries.

.ini file section

Registry path

Description

CONTROL.ini[Current], [Color Schemes], [Custom Colors]

Color Schemes, Current, and Custom Colors subkeys in #USR \Control Panel1

Describes color schemes and custom colors as set using the Display icon in Control Panel.

CONTROL.ini [Patterns] and [Screen Saver*]

Patterns and Screen Saver.x subkeys in #USR\Control Panel1

Describes elements of desktop appearance and performance as set using the Display icon in Control Panel.

CONTROL.ini [MMCPL], [Drivers.Desc], [Userinstallable.drivers]

#USR\Control Panel\MMCPL1;#SYS...\Drivers.Desc and \Userinstallable.drivers3 

Contains values for installable drivers and devices used for multimedia as set using the Multimedia icon in Control Panel.

PROGMAN.ini [groups], [restrictions], [settings]

Groups, Restrictions, and Settings subkeys in #USR...\Program Manager2

Describes window appearance, folders and the icons in the folders, and restrictions on Task Bar operations; restrictions are set in User Manager for Domains (Server only).

WINFILE.ini [settings]

#USR...\File Manager2

Describes the appearance and behavior of items in the Windows NT Explorer.

1 Full path = HKEY_CURRENT_USER
2 Full path = HKEY_CURRENT_USER \SOFTWARE \Microsoft \Windows NT\CurrentVersion
3 Full path = HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft\Windows NT\CurrentVersion

Microsoft OS/2 Version 1.x Entries in the Registry

The Microsoft OS/2 version 1.x subsystem starts whenever a user starts an OS/2 character-based application on an x86-based computer. The registry entries for the OS/2 subsystem are found under this path:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \Session Manager\SubSystems

The Os2 entry in this subkey describes the path to the executable file used to start the OS/2 subsystem. The directory path for the OS/2 library is the Os2LibPath value defined under the Session Manager\Environment subkey.

If Setup finds a copy of Config.sys for OS/2 when Windows NT is installed, a copy is placed in the %SystemRoot%\system32 directory. This information is used to configure the OS/2 subsystem whenever an OS/2 application is started. If a Config.sys file is not found, a substitute with the following values is created in the Registry:

PROTSHELL=C:\os2\pmshell.exe c:\os2\os2.ini c:\os2\os2sys.ini %SystemRoot%\system32\cmd.exeSET 
COMSPEC=%SystemRoot%\system32\cmd.exe

The OS/2 Config.sys information is stored in the following registry entry, which appears only after an OS/2 application has been run on the system:

HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft \OS/2 Subsystem for NT\config.sys

The other subkeys under the OS/2 Subsystem key do not contain entries.

If you subsequently edit the C:\Config.sys file using a text editor, LIBPTH=, SET PATH=, and Set WINDIR= entries are appended to the end of the file from the Windows NT environment. Any changes made to the path or environment variables take effect after the system is shut down and restarted.

For details about managing this environment under Windows NT, see Appendix B "Other Application Environments."

You can disable an OS/2 subsystem in Windows NT and still run a bound application under a VDM. Many bound applications run better under a VDM than under the OS/2 subsystem.

To disable the OS/2 subsystem in Windows NT

  • In Registry Editor, change the value of GlobalFlag to 20100000 in the following registry path: 

    HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \Session Manager
    

You can also use Forcedos.exe, a tool supplied in the %SystemRoot%\system32 subdirectory. This tool enables you to run a bound application under a VDM. For information about how to use the ForceDOS tool, type forcedos /? at the command prompt.

POSIX Entries in the Registry

The POSIX subsystem starts whenever a user starts a POSIX application. The registry entries for the POSIX subsystem are found under this path:

HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \Session Manager\SubSystems

The Posix entry in this subkey describes the path to the executable file used to start the POSIX subsystem. The POSIX subsystem does not have any parameters or environmental variables that the user can set.

POSIX utilities and their source code are available on the Windows NT Workstation Resource Kit compact disc.

Cc751456.spacer(en-us,TechNet.10).gif