Меня попросили найти решение для наших удаленных пользователей портативных компьютеров, которые пытаются проводить презентации в Powerpoint и Excel на сайтах клиентов. Мы работаем в среде Server 2008 / Win 7. У нас есть групповая политика, которая блокирует каждый компьютер после 5 минут бездействия и требует пароля для повторного входа в систему. Меня спросили, могу ли я изменить этот параметр для пользователей на ноутбуках, когда они входят в систему, но не находятся локально в домене. Они хотели бы иметь возможность настроить его так, чтобы экран не блокировался, когда они проводят презентации в PP, Word или Excel. Насколько мне известно, powerpoint отключает заставку в полноэкранном режиме, но я не уверен, как добиться этого с помощью других программ. Я пробовал смотреть режим презентации на ноутбуках, но из-за групповой политики параметр «отключить заставку» неактивен. Любые идеи? Спасибо.
Я смог продемонстрировать себе, что presentationsettings
Первоначально предложенный мною инструмент "уважает" параметры групповой политики, которые не позволяют пользователю изменять свою заставку. Я не знал об этом поведении, но это определенно имеет смысл, учитывая, что пользователи просто использовали бы этот инструмент, чтобы освободить себя от экранных заставок, когда ничего не происходило, связанного с презентацией.
Как упоминает @ HopelessN00b, вы можете изменить групповую политику, поскольку она применяется к «удаленным» портативным компьютерам. Вам нужно будет вызвать Обработка политики петли потому что настройки заставки устанавливаются для каждого пользователя, а не для компьютера. Обработка политики Loopback позволяет применять параметры пользователя к компьютеру независимо от того, кто вошел в систему.
К сожалению, эта функция многих сбивает с толку. В нем есть несколько различных «режимов» (слияние или замена), которые еще больше сбивают с толку. Для своего приложения вы можете создать ссылку на объект групповой политики с гипотетическим подразделением «Remote Laptop Comptuers», которое включает обработку политики петли в режиме «слияния» в разделе «Конфигурация компьютера» и в разделе «Конфигурация пользователя» устанавливает заставку. свойства на все, что вы хотите. Когда в следующий раз эти машины будут перезагружены (поскольку для переключения с не-Loopback на Loopback требуется перезагрузка - обновление политики в фоновом режиме не включит его), вы увидите, что машины начинают получать настройки заставки из этого нового GPO.
Если не считать написания какой-то хакерской клиентской служебной программы для доступа к реестру пользователя и переключения значения ограничения экранной заставки групповой политики (поскольку пользователь не может сделать это сам из-за разрешений реестра), я думаю, вы застряли в ситуация, когда вам придется выбрать меньшее из зол и либо отключить ограничения экранной заставки для пользователей на портативных компьютерах, либо использовать стороннее программное обеспечение для манипуляции мышью или имитацию клавиатуры, либо просто сказать пользователям, чтобы они жили с Это.
Редактировать:
Существует множество сторонних программ, которые могут делать то, что вы ищете, но есть определенная «элегантность» в том, чтобы делать что-то только с помощью встроенных компонентов ОС.
Вот небольшая программа VBScript, подходящая для выполнения wscript.exe
(это означает, что вы можете развернуть это с настройками групповой политики непосредственно в папке «Автозагрузка» компьютера), которая должна делать то, что вы ищете, при условии, что DNS-имя вашего домена не может быть разрешено извне в вашу сеть. (Если ее удастся решить внешне, то, честно говоря, вы получите то, что заслуживаете.)
Этот скрипт находится в цикле опроса, используя nslookup
для разрешения домена, указанного в USERDNSDOMAIN
переменная окружения. Он опрашивает каждые 10 секунд, но вы можете изменить это, изменив Const POLL_DELAY
линия. (Странное вращение повторного выполнения необходимо, потому что, если оно выполняется только wscript.exe
, в каждом интервале опроса на короткое время будет появляться окно - совсем нехорошо.)
Когда имя домена не разрешается, клавиша «F15» «нажимается», вызывая достаточно активности, чтобы Windows не активировала заставку.
Этот сценарий был протестирован в Windows 8.1 x64, вошедшим в систему с пользователем домена, к которому применялся объект групповой политики, который включал параметры административного шаблона:
scrnsave.scr
Моя методика тестирования была следующей:
ss.vbs
, в папку "Автозагрузка" компьютераНа машине с Windows 8.1 x64 скрипт делает именно то, что я хочу.
Option Explicit
' Delay, in seconds, between attempts to resolve the domain name
' and pressing the "F15" key.
Const POLL_DELAY = 10
Dim objShell
Set objShell = WScript.CreateObject("WScript.Shell")
Dim objExec
Dim intFound
If UCase(Right(WScript.Fullname, 11)) = "WSCRIPT.EXE" Then
While 1
intFound = objShell.Run("cscript.exe """ & WScript.ScriptFullName & """", 0, True)
If intFound = 255 Then objShell.SendKeys("{F15}")
WScript.Sleep(POLL_DELAY * 1000)
Wend
Else
Set objExec = objShell.Exec("nslookup " & objShell.ExpandEnvironmentStrings("%USERDNSDOMAIN%"))
While Not objExec.StdOut.AtEndOfStream
If Left(objExec.StdOut.ReadLine, 5) = "Name:" Then WScript.Quit(0)
Wend
WScript.Quit(255)
End If
Типичный способ решения этой проблемы - это отдельный набор политик для пользователей или машин, определенных как «удаленные» работники. У нас, например, есть подразделение с именем Remote Laptop Users
что позволяет этим пользователям больше управлять дисплеем и настройками питания именно по этой причине. (Вы также можете использовать фильтрацию WMI или фильтрацию безопасности для достижения тех же результатов, если вы не хотите или не можете изменить подразделения, в которых находятся эти объекты).
Если вы можете заставить своих пользователей использовать настройки презентации инструмент, предложенный Эваном Андерсоном, это здорово, но мой опыт показывает, что пользователи, которые жалуются на такие вещи, также не поднимают пальца, чтобы решить проблему, и ожидают, что ИТ-специалисты исправят это за них, поэтому вы может закончиться тем, что придется исправить это для них с другим GPO.