У руководства возникла идея установить на всех ПК организации одинаковый скринсейвер (экранную заставку), представляющий собой слайд-шоу с изображениями. В качестве изображений планируется использование картинок, выполненных в корпоративном стиле компании, на которых указываются основные правила информационной безопасности, полезные советы для пользователей и другая справочная информация. В результате, у меня получилось решение распространения файлов с картинками и управления экранной заставкой с помощью возможностей GPO (групповых политик).
Сразу отмечу, что в компании в качестве клиентских ОС используются все поддерживаемые версии Windows: Windows 7, Windows 8.1 и Windows 10, поэтому решение по управлению корпоративной заставкой должно быть универсальным и работать на любой версии ОС.
Первоначально рассматривался вариант по созданию собственного скринсейвера в формате *.scr, но такая методика требует дополнительного софта и не достаточно гибка и проста в управлении.
В ОС Windows, начиная с Windows 7 на экране блокировки в качестве скринсейвера можно отображать слайд шоу из изображений в указанной папке, но управлять этими настройками с помощью GPO нельзя. Пришлось искать обходное решение.
Общий сетевой каталог с изображениями для слайд шоу
В первую очередь на любом сервере сети создадим общий сетевой каталог, в котором будут храниться оригиналы файлов с изображениями для слайдшоу. Необходимо предоставить всем пользователям домена (группе Domain Users) права на чтение файлов в этой папке. К примеру, в нашем случае файлы хранятся по следующему UNС пути: \srv1InstallImg. Скопируем в нее файлы изображений.
Затем создадим файл со скриптом copy_screens.bat, который должен подключать данную сетевую папку на клиентах и копировать файлы с изображениями для скринсейвера на локальный диск каждого компьютера в папку C:Screen. Код скрипта copy_screens.bat представлен ниже.
net use s: \srv1InstallImg
mkdir C:Screen
del /Q C:Screen*.*
xcopy S:*.* C:Screen
Скопируйте скрипт в каталог SYSVOL на контроллере домена (C:WindowsSYSVOLsysvolcontoso.comscripts). Затем с помощью редактора групповой политики создайте новую GPO или отредактируйте имеющуюся. С целью демонстрации, мы будем запускать задание копирования через разовое задание планировщика (если нужно обновить слайды, назначьте повторный запуск задания). Создадим с помощью GPO новое задание планировщика для всех ПК.
Совет. Можно организовать копирование через Startup скрипт, но в этом случае, желательно модифицировать скрипт так, чтобы он проверял изменились ли файлы в исходном каталоге.
Перейдите в раздел User Configuration > Preferences > Control Panel Settings > Scheduled Tasks и создайте новое задание (New->Scheduled Task at Least Windows 7) со следующими параметрами:

Имя задания: CopyScreen
Действие: Update
Запускать задание из-под: %LogonDomain%%LogonUser%

На вкладке Triggers, добавим новое условие New Trigger -> On a Schedule -> One Time

На вкладке Action – укажем, что нужно запускать скрипт: \contoso.comSYSVOLcontoso.comscriptscopy_screens.bat

Сохраните изменения в задании и назначьте политику на OU с пользователями.
Настройка параметра скинсейвера на эталонном ПК
Теперь на эталонном компьютере нужно настроить сринсейвер, чтобы он брал изображения для слайдшоу из папки C:Screen. Настройки соответствующих веток реестра этого компьютера в дальнейшем распространим на все ПК с помощью GPO.
Примечание. На эталонном компьютере каталог C:Screen должен существовать.
В случае Windows 10 перейдите в следующий раздел настроек: Start -> Settings -> Personalization -> Lock Screen. Промотайте вниз и найдите Screen Saver Settings. В качестве скринсейвера выберите ‘Photos’ и нажмите кнопку Settings.

Укажите путь к папке C:Screen, включите опцию Tick Shuffle Pictures и сохраните изменения.

Теперь нам нужно экспортировать ветку реестра HKEY_CURRENT_USER > Software > Microsoft > Windows Photo Viewer > Slideshow > Screensaver в reg файл и импортировать ее на контроллере домена (или другом компьютере, с которого выполняется редактирование GPO).

Важно. Путь к каталогу с изображениями хранится в ключе EncryptedPIDL в зашифрованном виде (Base64), поэтому изменить его вручную не получится. Но, т.к. Windows некорректно расставляет переносы строки в значении этого ключа, придется вручную отредактировать reg файл (с помощью блокнота) и сделать так, чтобы значения ключа EncryptedPIDL содержалось в одной строке.

Сохраните reg файл и импортируйте его на компьютер, с которого вы редактируете GPO.
Групповая политика управления экранной заставкой
Откройте GPO и перейдите в ветку GPP: User Configuration -> Preferences -> Windows Settings -> Registry. Создайте новый параметр New > Registry Wizard > Next

Перейдите к ветке HKEY_CURRENT_USER -> Software -> Microsoft -> Windows Photo Viewer -> Slideshow -> Screensaver. Отметьте следующие ключи и нажмите Finish:
- EncryptedPIDL
- Shuffle
- Speed

Затем перейдите в раздел GPO User Configuration -> Policies -> Administrative Templates -> Control Panel -> Personalization. Включите политику Force specific screen saver, в качестве значения укажите PhotoScreensaver.scr. (по умолчанию Photoscreensaver.scr использует в качестве источника изображений для слайдшоу каталог C:UsersPublicPicturesSample Pictures).

Совет. Кроме того можно включить следующие политики в разделе Personalization
- Enable Screen Saver
- Password Protect Screen – защита экрана блокировки паролем (пзволяет автоматически заблокировать экран компьютера, если пользователель отошел от рабочего места)
- Screen Saver timeout – время простоя компьютера в секундах, после которого автоматически включается скринсейвер
На этом все, закройте консоль Group Policy Management и обновите политики на клиентах (
gpupdate /force
). На всех компьютерах, после указанного времени простоя должен включаться единый корпоративный скринсейвер в виде слайдшоу из изображений в папке c:Screen.
