Ранее уже был пост о том, как запустить программу с соблюдением соответствия архитектуры ОС и версии исполняемого файла.
Задача выглядела так — разнести по всем компьютерам домена одну очень известную программу с соблюдением разрядности операционной системы, но на часть компьютеров должна быть установлена только 32-битная версия программы вне зависимости от разрядности установленной на них операционной системы.
Если с первой частью задачи всё относительно просто, то со второй пришлось поразвлекаться.
Для начала создадим два объекта групповой политики. Например, InstallSoft(64) и InstallSoft(32). Чуть позже создадим и третий объект, но об этом ближе к концу поста.
По пути «Конфигурация компьютера > Политики > Конфигурация программ > Установка программ» назначаем установку нужного msi пакета для обоих объектов политики. Соответственно, для InstallSoft(64) это будет 64-разрядный установщик, а для InstallSoft(32) 32-разрядный.
После этого необходимо в объекте групповой политики InstallSoft(32) зайти в свойства назначенного установочного пакета, перейти на вкладку «Развертывание» и нажать на кнопку «Дополнительно…«:
Откроется окно «Дополнительные параметры развертывания«:
В этом окне нужно снять галочку на пункте «Сделать это 32-разрядное Х86 приложение доступным для компьютеров с архитектурой Win64«.
Теперь мы получили два объекта групповой политики, которые можно применить к подразделению с компьютерами в Active Directory и политика установки сама разберётся кому ставить какой разрядности программу.
Можно смело сказать, что половина пути пройдена.
Но поставленная задача усложняется тем, что необходимо сформировать список машин, на которых должна стоять именно 32-битная версия обозначенной программы вне зависимости от разрядности операционной системы. Если упростить — необходимо вывести часть компьютеров из-под действия объекта групповой политики InstallSoft(64).
Для этого создадим группу безопасности и назовём её на своё усмотрение. Например, в моём случае группа называется «Компьютеры с кассовой техникой«.
В эту группу помещаем все компьютеры, которые попадают под обозначенное условие.
Теперь переходим к настройке объекта групповой политики InstallSoft(64) и выбираем вкладку «Делегирование«. На этой вкладке нажимаем на кнопку «Дополнительно«.
Открывается окно «Параметры безопасности«. В нём нужно добавить созданную ранее группу безопасности с компьютерами, которые нужно вывести из-под действия объекта групповой политики InstallSoft(64).
Выделив добавленную группу, запрещаем ей чтение объекта политики и его применение.
Финальным штрихом будет создание нового объекта групповой политики с назначением 32-разрядного установочного пакета, которому можно разрешить установку на компьютеры с архитектурой Win64.
Само собой, что в настройках объекта групповой политики запрещаем чтение и применение групповой политики всем, кроме ранее созданной группы безопасности.
Схема заметно упрощается, если сложить все нужные машины в одно подразделение и применить к нему вышеуказанную политику, миновав возню с делегированием и параметрами безопасности.





