Installing Resource DLLs for the SMS Administrator

To enable the SMS Administrator to use the graphics in a resource-only DLL, you must install the DLL and add keys to the Windows NT Registry of the computer where the SMS Administrator is installed.

    To install resource-only DLLs for the SMS Administrator
  1. Install the resource-only DLLs in a directory that is in the path of the computer where the SMS Administrator is installed.
  2. Add keys that specify the DLLs to the Windows NT Registry of the computer where the SMS Administrator is installed.
  3. If the SMS Administrator is running, exit and restart it.

These steps are described in detail in the following paragraphs.

Install the resource-only DLLs in a directory

Install the resource-only DLLs in a directory that is in the path of the computer where the SMS Administrator is installed. Optionally, you can place the DLLs in their own directory and specify a fully qualified path when you configure the Windows NT Registry to complete the installation of the DLL.

Caution Do not install your resource-only DLLs in a purgeable SMS directory.

When the SMS setup program is used to upgrade site components, the SMS setup program removes all files from the SMS directories marked with the SM_DIRECTORY_PURGEABLE flag in the SYSTEM.MAP file. Those files are then replaced with files copied from the SMS CD-ROM by SMS Setup. The following directories are purgeable SMS directories:

where sms_install_drive is the drive where SMS is installed, smsroot is the name of the directory where the SMS installation directory resides, and platform.BIN is the processor type of the computer—X86.BIN, ALPHA.BIN, or MIPS.BIN.

Note that you can create subdirectories within purgeable directories. These subdirectories and their contents will not be removed on an upgrade. However, if SMS is removed from the computer the entire SMS root directory is removed.

Add keys to specify the DLLs to the Windows NT Registry

The set of DLLs can be specified by using the following registry keys:

HKEY_CURRENT_USER\Software\Microsoft\SMS\ResDLLs
Specifies the resource-only DLLs to be used only by the current user. The SMS Administrator searches for a resource in the list of DLLs in this key first.
HKEY_LOCAL_MACHINE\Software\Microsoft\SMS\ResDLLs
Specifies the resource-only DLLs to be used by any user on that computer. If the resource is not found in the DLLs in HKEY_CURRENT_USER, the SMS Administrator then searches for a resource in the list of DLLs in this key.

When the SMS Administrator searches for display graphics in the resource-only DLLs, it searches the DLLs in the following order:

  1. DLLs listed in HKEY_CURRENT_USER. The SMS Administrator uses the reverse of the order listed in the Installed value to search the DLLs.
  2. DLLs listed in HKEY_LOCAL_MACHINE. The SMS Administrator uses the reverse of the order listed in the Installed value to search the DLLs.
  3. SMS Administrator's own application resources. Note that some architectures, objects, and groups (such as the Personal Computer architecture, Macintosh workstation computers, and the Processor and Disk groups) have graphics predefined in the SMS Administrator's resources. However, these graphics can be overriden by a resource-only DLL.
    To add a DLL to the list of DLLs to be searched
  1. Add a ResDLLs key beneath one of the following keys (if the key does not already exist):

    HKEY_LOCAL_MACHINE\Software\Microsoft\SMS

    HKEY_CURRENT_USER\Software\Microsoft\SMS

    Use HKEY_LOCAL_MACHINE if you want the DLL available to all users of the computer. Use HKEY_CURRENT_USER if you want the DLL available to only the current user.

  2. In the ResDLLs key, add a value called Installed with a type of REG_MULTI_SZ (if the key does not already exist).
  3. In the Installed value, add the name of key for the new DLL you want to add, such as DLLName1.
  4. Add the key for the new DLL beneath the ResDLLs key. For example, if you specified the name of the key to be DLLName1 in the Installed value, you must create a key named DLLName1 beneath the ResDLLs key.
  5. In the key for the new DLL, add a value with the name PathName, a type of REG_SZ, and a value that specifies the path and file name. For the value, you can specify only the file name or a fully qualified path.

Exit and restart the SMS Administrator

If the SMS Administrator is running, exit and restart it.

This is a sample registry configuration:

HKEY_CURRENT_USER
    Software
        Microsoft
            SMS
                ResDLLs
                    Installed   REG_MULTI_SZ    DLLName1
                                                DLLName2
                                                DLLName3
                    DLLName1    PathName    REG_SZ    myres.dll
                    DLLName2    PathName    REG_SZ    myicons.dll
                    DLLName3    PathName    REG_SZ    oemicons.dll

In the preceding example, the SMS Administrator would search for a named graphic in the following order: OEMICONS.DLL, MYICONS.DLL, MYRES.DLL, and finally the SMS application resource.