The Client-Side Registry Framework: a More Detailed View

This section describes the process by which conflicting default site settings and user settings are reconciled. The different registry keys are important to ensure that site-wide settings, combined-site settings, and user settings are all factored into the ultimate resolution. The different staging areas in the registry are:

Site settings
For the site code of the site to which the client belongs.
Combined-site settings
For all settings across all site codes (if there is more than a single site to reconcile conflicting settings).
User settings
Local settings, if permitted, for the individual client.

These keys, and their locations and usage, are described in the following sections. All of these registry keys are subkeys of the \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS key.

Site-Based (Administrator-Specified) Settings

The site-based settings for each site that a client is a member of are stored in the following registry key:

…\Sites\<Site_code>\Client Components\Remote Control

This key is based on the site code, so unless the client is a member of multiple sites, it will be the only such node under the Sites key. It contains all of the settings that an administrator of an SMS site can set. This key is both the superset and starting point for the settings that dictate each client’s Remote Tools settings. (It is a superset because it contains settings that the user cannot change, such as Default Protocol, Compression Type, and Video Acceleration.)

Combined-Site Settings

The combined-site settings key contains the reconciled setting for all sites and is stored in the following registry location:

…\Client\Client Components\Remote Control\Combined Sites

This key contains the cumulative settings from all sites that the client is a member of. This key is usually very straightforward because most clients are members of only a single site. When a client is a member of a single site, Security Munger performs the simple task of passing a subset of the site-wide settings into the Combined Sites key. When a client is a member of multiple sites and Remote Tools are active for more than one site, Security Munger performs the heavier task of reconciling the different site security settings. It places the result in the Combined Sites key.

As an added bonus, the Combined Sites key contains subkeys based on the Site Code that record the time and date when the last update from a particular site occurred. If this time/date value matches the Last Changed At value under the site-based key, Security Munger saves itself time (and CPU cycles) by not reconciling values that have not changed.

User Settings

User settings are stored in the following registry location:

…\Client\Client Components\Remote Control\User Settings

This key contains the client’s values set by the user through the Remote Control icon (SMSrc.cpl) in Control Panel. The user settings are completely separate from the site-based and combined-site values specified by the administrator or the cumulative settings of multiple administrators (if a client is a member of multiple sites). The user settings remain unused unless the administrator allows clients to change these settings. If users are permitted to change settings, and choose to do so, these registry values are passed to the base Remote Control key.

Remote Control Settings

The Remote Control key contains the values that the Remote Control Agent uses to function. The Remote Control settings are stored in the following registry location:

…\Client\Client Components\Remote Control

This key contains the actual values used by the client-side agent. This key is populated either from the settings in the Combined Site key or from the User Settings key as described above.

Changes made directly to the User Settings registry keys apply immediately to Windows NT clients because the clients read the registry dynamically. Changes made directly to the Windows 95 or Windows 98 registry or to the Win16 .ini file do not take effect until the client agent is stopped and restarted. (For more information, see the “Stopping and Restarting Wuser and Wuser32” section later in this chapter). For this reason, the preferred method for changing User Settings is to use the Remote Control icon in Control Panel. Changes made in this way are placed into the Windows 95, Windows 98, or Win16 Remote Control Agent’s working set and thereby change the client agent dynamically.