Windows NT 4.0 users are controlled through the Registry and through user profiles. User information in the Registry is stored in the NTUSER.DAT file in the user's profile folder.
User profile information is stored in %systemroot%\profiles\%username%. The menu information is held there, as well as options and desktop icons. Inside each profile are the startup applications, the folders for Network Neighborhood, and other lists of information.
The most important ones to notice are the Default User profile and the All Users profile. The Default User profile is the template for all new users. Whatever is set there will be duplicated when a new user logs onto the system. If you want to give every new user the same Send To menu, you could change it in the Default User profile folder. Any changes to the .DEFAULT user in HKEY_CURRENT_USERS in the Registry get saved in the NTUSER.DAT file in the Default User profile folder.
The All Users profile is new to NT 4.0. It doesn't have an NTUSER.DAT file, so the only information that can be used for all users is the menu and folder information. The real benefit of the All Users profile is in the installation of software. Previously, any software that was installed worked only for the user who installed it, but now programmers can set their applications so the installation will update the All Users profile. When a user logs onto Windows NT, it pulls the information from the user's profile, plus all the information from the All Users profile.
There are several locations that control how the user will work in Windows NT 4.0. Software that is installed changes HKEY_LOCAL_MACHINE and may also affect HKEY_CURRENT_USER. Operating system installation and features affect HKEY_LOCAL_MACHINE, but the settings for the desktop affect HKEY_CURRENT_USER. The entries in this chapter are categorized into the following sections.
Operating system basic functions
Connections
Generic Windows functions
User preferences on the desktop
Software settings in HKEY_CURRENT_USER
By looking in each of the sections, you will get a good idea how Microsoft designed the user functions in the Registry, and where you will need to look to aid in your troubleshooting.
The settings for Windows NT basic functions are in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion. It covers all the settings necessary for NT to work on this system. Even though none of the settings are user-dependent, many of them still affect the users and how they work.
One of the most important functions to see is the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts key. In the Fonts key, Microsoft lists all the fonts that are available to the user. Normally, you would make changes in the Fonts applet in the Control Panel. However, if you lose your font metrics, which match the screen font to the printer font, you might need to restore this key. Also, it is a good place to look to see where the actual font file is located. Putting the font in the actual Fonts folder instead of making a shortcut there saves space in the Registry, speeds up the performance of the system, and reduces errors.
Another function that is closely related to fonts is Font Substitution. There is no function in NT to specify font substitution if a font that is specified is not available. Suppose you receive a document from a friend who uses a font you do not have. NT will try to determine whether the font specified is a serif or sans-serif font, and then change the screen font to MS Serif or MS Sans Serif, respectively. If you know the problem is going to happen, you could change the font by adding a substitution yourself in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes.
TIP: One day I was presented with a problem that I needed to fix in a hurry. I had a CorelDRAW! document, a form, that had 185 separate boxes with text in them. The text was 5-point Palatino, a TrueType font. When I printed it, it looked terrible, even though it looked great on the screen. When TrueType fonts are used below 6 points, they do not align well unless the font is installed in the printer as a built-in font. I knew Times New Roman was a built-in font in the HP LaserJet, so all I needed to do was replace the Palatino font with the Times New Roman. But there were 185 instances. Currently, CorelDRAW! allows a font substitution function in its versions, but it did not in that version. There were no styles to work with, as in my word processor. To fix the problem, I added a value to my HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes key, replacing Palatino with Times New Roman, and then I removed Palatino from the Fonts folder. When I logged off and back on again, Palatino was replaced, and the document printed perfectly. It took less than five minutes to fix a problem that could have taken hours to change in the document.
For 16-bit Windows compatibility and for other .INI file connections, see HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping. If there is a problem with an application that is a 16-bit Windows application, you may be able to trace it with the information here. If you make a change in the Registry for a specific application, and the change doesn't stick, you might look here to see if there is an .INI file also. In many cases, .INI files write information into the Registry. You need to make the change in both places, if that is the case.
Other functions related to the use of NT are also in the Windows NT\CurrentVersion key. Familiarize yourself with the key, so if you have problems to solve, you will know where to look.
Functions relating to logging on to Windows NT and connecting to the network are located in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. This key stores the current user name, the domain or workgroup name, the shell name, and much more. If the problem is in logging on, this is the first place to look.
TIP: If you have logged onto a domain, and then switched to another domain, there may be some confusion as people look in the domain name section in the logon screen. Both domain names will show, along with the machine name. If you no longer want the original domain name to show, remove it from the value named DCache in the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon key.
How the Windows functions will work are in the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion key. This key is the same in Windows NT 4.0 as it is in Windows 95. Applications can use this key to set up how the windows in their applications will work.
TIP: Want to get rid of the Inbox from your desktop? You can do it by removing the key that is used to tell Explorer to put it there. The key that controls the icon is in HKEY_LOCAL_MACHINE\SOFTWARE\
Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace. There are actually three keys there, one for the Inbox, one for the Recycle Bin, and one for the Internet. Removing the icon only changes how the system looks. The Inbox icon just allows you to install the Windows Messaging System, the Recycle Bin icon allows you to easily undelete files you have sent there, and the Internet icon allows you to install Internet Explorer. Once the Internet Explorer is installed, the icon changes, as does the Inbox function. I would be very hesitant to delete the Recycle bin. You can still delete things to the bin, but you must go to the Recycler directory in Explorer.exe to retrieve files. Also, all the files are shown in a bin named after the SID of the user.
A great key in the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion is Run. When an application is loaded there, it will start during the startup of the system. The difference between this and using the Startup folder in the user profile is that this works for anyone using the system, and it requires a Registry change to take it out.
If the data you seek isn't in the Windows NT key, check here, in the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion key, particularly if the same function works in both NT and 95.
The icon font, the wallpaper, the screen saver, and other preferences are stored on a user-by-user basis in HKEY_CURRENT_USER\Control Panel\Desktop. Though most are normally changed through the Control Panel, you can easily use the location for remote editing and for custom templates in System Policy Editor.
The Software key in HKEY_CURRENT_USER is used as a registration function for the software. It provides information for the application to use for the user who has logged onto the network or the local system. If you want an application to work for a user, in many cases, it will require a listing in this key. The difference between the information in this key and that in the HKEY_LOCAL_MACHINE\Software key is that the information HKEY_CURRENT_USER is specific to the user who is going to use the application. In the case of Pinball, for example, there are user options in the program for customization of the table, the keys, and so on. Those are only for the current user. If someone else logs on, the options will return to the default.
The functions that control and enable users in Windows NT are extensive and complex. By understanding the locations of the Registry entries, and the types of information in each, you can better troubleshoot the problems users might have in working with NT, applications, and system preferences.
© Copyright, Macmillan Computer Publishing. All rights reserved.