Поделиться через


Использование установщика Windows с сервером терминалов

Следующее может повлиять на установку установщика Windows при использовании сервера терминалов. Разработчики программы установки всегда должны проверять правильность установки пакета установщика Windows, если пользователи также используют сервер терминалов.

  • В операционных системах, предшествующих Windows Server 2008 и Windows Vista, необходимо задать системную политику EnableAdminTSRemote , чтобы разрешить администраторам выполнять установку в сеансе клиента. Начиная с Windows Server 2008 и Windows Vista, политика EnableAdminTSRemote больше не действует. Независимо от его параметров, администраторы и не администраторы могут выполнять установку в сеансе клиента или сеансе консоли. Администраторы и не администраторы всегда могут выполнять установку установщика Windows в сеансе консоли.
  • Установщик Windows запрещает установку в контексте установки для отдельных пользователей, если для системной политикиDisableUserInstalls задано значение 1. В этом случае установщик игнорирует все приложения, зарегистрированные как "на пользователя", и выполняет поиск только приложений, зарегистрированных как "на компьютер".
  • Когда администратор выполняет установку в сеансе клиента сервера терминалов, размещенного в Windows 2000, установка должна использовать UNC-путь, а не сопоставленную букву диска.

При разработке компонента установщика Windows, который может использоваться с сервером терминалов, разработчикам следует придерживаться следующих рекомендаций.

  • Запишите все сведения о реестре HKCU в часть реестра HKCU\Software .
  • Хранить сведения о конфигурации в INI-файлах не рекомендуется.
  • Запись сведений об уровне пользователя в реестр при первом запуске приложения, а не во время установки. Если во время установки необходимо записывать сведения о пользователях в реестр, разделите сведения об отдельных пользователях и компьютерах в разные компоненты установщика Windows. Создайте пакет таким образом, чтобы установщик не пытался проверить и восстановить компоненты, содержащие сведения для каждого пользователя, при установке приложения.
  • Пакет, используемый только для установки компьютера, должен записывать переменные среды в среду компьютера, включив * в столбец Имя таблицы среды. Если пакет можно использовать для установки на пользователя или на компьютер, используйте два компонента. Включите компонент для каждого пользователя в таблицу компонентов и введите параметры пользователя в таблице среды. Включите компонент для каждого компьютера в таблицу компонентов и введите параметры компьютера в таблице среды. Управление устанавливаемым компонентом с помощью условных инструкций на основе свойства ALLUSERS в поле Условие таблицы компонентов.
  • При выполнении установки на каждом компьютере с сервера терминалов установщик записывает переменные среды для каждого пользователя в HKCU\. Среда по умолчанию\. Так как сервер терминалов не реплицирует этот раздел реестра, при установке не задаются переменные среды для каждого пользователя.
  • Так как сервер может быть настроен так, чтобы запретить пользователям восстанавливать приложения, приложение должно корректно обрабатывать ситуацию отсутствия разделов реестра.

Следующее применяется, если пакет установщика Windows, использующий пользовательские действия DLL, EXE или script, устанавливается в контексте установки на каждом компьютере на сервере терминалов. В этом случае установщик задает свойство TerminalServer .

  • Отложенные пользовательские действия выполняются в контексте локальной системы, если действие не имеет атрибут msidbCustomActionTypeTSAware . Это верно, даже если настраиваемое действие олицетворяет пользователя в системе, которая не является сервером терминалов. Обратите внимание, что если настраиваемое действие с атрибутом msidbCustomActionTypeTSAware изменяет реестр пользователя, установщик не будет автоматически гарантировать, что эти изменения также внесены в реестр каждого пользователя на компьютере.
  • Любые операции с реестром в отложенном настраиваемом действии, которое считывается из куста реестра HKCU , видят куст реестра системы по умолчанию, а не куст реестра текущего пользователя.
  • Все операции реестра в отложенном настраиваемом действии, которое выполняет запись в HKCU\Software , обнаруживаются установщиком и копируются каждому пользователю компьютера при следующем входе пользователя.
  • Любые операции реестра в отложенном настраиваемом действии, которые записываются в HKCU, но не находятся в разделе реестра HKCU\Software , не обнаруживаются установщиком и не копируются.

Дополнительные сведения см. в разделе Службы терминалов в пакете sdk для Microsoft Windows.

EnableAdminTSRemote

Свойство TerminalServer

Свойство RemoteAdminTS

Службы терминалов