The SMS client files are installed in the directory specified by the SMS_LOCAL_DIR environment variable. By default, SMS_LOCAL_DIR is set during the initial installation to the value of the WINDIR environment variable (for example, C:\Windows). To have the SMS files installed in a different directory, set the SMS_LOCAL_DIR environment variable on the client before the SMS is installed.
The value of SMS_LOCAL_DIR can be any valid path. For example, D:, or D:\Program Files. The \MS\SMS tree will be grafted on below that point. For example, D:\MS\SMS, or D:\Program Files\MS\SMS. Note that you must not include a trailing backslash in the environment variable (for example, type “D:” not “D:\”).
You can set SMS_LOCAL_DIR in the logon script prior to the first reference to %SMS_LOCAL_DIR%, or you can set it on the client before running the logon script.
You can also set the SMS_LOCAL_DIR environment variable when using SMSman.exe and Windows NT Remote Client installations. However, for Windows NT Remote Client installations, make sure that SMS_LOCAL_DIR is a system environment variable, not a user environment variable. Also, you should restart the Windows NT systems after the environment variable is set, but before the Windows NT Remote Client installation Bootstrap service is installed.
Note that changing the value of SMS_LOCAL_DIR after the initial discovery or installation of the client will not move an existing \MS\SMS directory tree. What it will do is create a new \MS\SMS directory tree in the location specified by SMS_LOCAL_DIR. However, the client will continue to use the previous location because the client uses the path specified in the registry (and that value will not change because the path is only written if that registry value does not exist; it will not be overwritten). The only code that uses SMS_LOCAL_DIR is the code that initially creates the \MS\SMS directory tree and places the location into the registry.