Outlook по умолчанию позволяет пользователям назначать встречи с интервалом в 30 минут; это можно изменить вручную, чтобы разрешить 15-минутное приращение ( Изменить шкалу календарного времени ).
Мне нужно развернуть / контролировать это в моей организации (в идеале с помощью групповой политики). Я проверил шаблон администрирования групповой политики Microsoft, но не нашел ничего подходящего для этого.
Есть идеи, как это можно развернуть / контролировать?
Вот сценарий, который вы можете настроить.... Его нужно запустить с текущим пользователем, Outlook должен быть закрыт, и он не работает для новых команд или собраний по скайпу.
*проверено в Outlook 2016
<#
2=10 minutes
3=15 minutes
4=30 minutes
0=5 minutes
5=60 minutes
1=6 minutes
#>
$minutes = 3
if (!(Get-Process OUTLOOK -WarningAction SilentlyContinue))
{
#Set outlook calendar time scale default
Add-type -assembly “Microsoft.Office.Interop.Outlook” | out-null
$olFolders = “Microsoft.Office.Interop.Outlook.OlDefaultFolders” -as [type]
$outlook = new-object -comobject outlook.application
$namespace = $outlook.GetNameSpace(“MAPI”)
$Calendar = [Microsoft.Office.Interop.Outlook.OlDefaultFolders]::olFolderCalendar
$folder = $namespace.getDefaultFolder($Calendar)
while ($folder.CurrentView.DayWeekTimeScale -ne $minutes)
{
$folder.CurrentView.DayWeekTimeScale = $minutes
}
Write-Host "Set to" $folder.CurrentView.DayWeekTimeScale
$folder.CurrentView.Save()
$outlook.Quit()
#Set new meeting outlook range to 15 min
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Office\16.0\Outlook\Options\Calendar" -Name "EndEventsEarly" -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Office\16.0\Outlook\Options\Calendar" -Name "EndEarlyShort" -Value 15
}
else
{
Write-Host "Outlook is open! The setting wasn’t set....." -ForegroundColor red
}