# ----------------------------------------------------------#
# Быстрый автозапуск Edge и Teams через планировщик задач #
# ----------------------------------------------------------#
# Функция создания задач в планировщике
function MakeTask ($taskname, $exe, $arg) {
$argEscaped = $arg -replace '&', '&'
$argXml = if ($arg) {"$argEscaped"} else {""}
@"
2026-01-01T12:00:00$env:usernametrue$env:userdomain\$env:username$env:userdomain\$env:usernameInteractiveTokenLeastPrivilegeParallelfalsefalsetruefalsetruetruefalsetruetruetruefalsefalseP3D7$exe$argXml
"@ | Out-File "$env:temp\task.xml" -Encoding Unicode
schtasks /delete /tn $taskname /f >$null
schtasks /create /xml "$env:temp\task.xml" /tn "$taskname" /it /f >$null
rd "$env:temp\task.xml" -Force
}
function Show-Menu {
Clear-Host
Write-Host "==========================================" -f Cyan
Write-Host " НАСТРОЙКА СИСТЕМЫ (BETHEL) " -f White
Write-Host "==========================================" -f Cyan
Write-Host "1 - Создать быстрый автозапуск (Edge/Teams)"
Write-Host "2 - Отрегулировка языков (US, LV, RU)"
Write-Host "3 - Твики интерфейса (Меню, Тема, Explorer)"
Write-Host "4 - Создать ярлыки Выхода/Выключения"
Write-Host
Write-Host "0 - Выход"
Write-Host "==========================================" -f Cyan
}
do {
Show-Menu
$choice = Read-Host "Выберите пункт"; Write-Host;
switch ($choice) {
'1' {
# ----------------------------------#
# Настройка автозагрузки Edge/Teams #
# ----------------------------------#
Write-Host "[!] Настройка автозагрузки Edge/Teams:" -f Yellow -n
# Создание задач
MakeTask "FastStartup-Teams" "$env:LocalAppData\Microsoft\WindowsApps\MSTeams_8wekyb3d8bbwe\ms-teams.exe"
$url = "https://login.bethel.jw.org/adfs/ls/wia?wa=wsignin1.0&wtrealm=urn:federation:MicrosoftOnline&wctx=SignIn%26ru=https://jwsite.sharepoint.com/sites/fin-intranet-home/SitePages/all-quick-links.aspx"
MakeTask "FastStartup-Edge" "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" "$url"
# Вывод готовности
Write-Host "Готово!" -f Green
Write-Host
# ----------------------------------#
# Настройка стартовой страницы Edge #
# ----------------------------------#
Write-Host "[!] Настройка стартовой страницы Edge: " -f Yellow
Write-Host
# --- Копируем страницу настроек в буфер --- #
$settingsPage = "edge://settings/startHomeNTP?search=sites" | scb
Write-Host "Скопирована в буфер ссылка: " -f Green -n
Write-Host $settingsPage -f Cyan
# Подсказка пользователю и запуск Edge
Write-Host "1. В браузере Edge перейдите по ссылке (или в Edge: Сtrl+L -> Ctrl+V -> Enter)" -f Yellow
start "msedge.exe"
Write-Host "2. Затем нажмите Enter чтобы скопировать ссылку для авто-логина... " -f Yellow -n; Read-Host
scb $url
Write-Host "Скопирована в буфер ссылка: " -f Green -n; Write-Host $url -f Cyan
Write-Host "3. Замените ссылку в "Open custom sites: Sites" на скопированную в буфере... " -f Yellow -n; Read-Host
}
'2' {
Write-Host "Настройка языковых раскладок..." -f Yellow
# ------------------------------------------------------------#
# Language & Keyboard Layout Setup (US-Intl, LV-QWERTY, RU) #
# ------------------------------------------------------------#
# --- Reset Region Temporarily ---
Set-WinHomeLocation -GeoId 244 # United States
Set-Culture en-US
# --- Config ---
$requiredLangs = @('en-US','lv','ru')
$usIntl = '0409:00020409'
$lvQwerty = '0426:00010426'
$ruLayout = '0419:00000419'
$preloadPath = 'HKCU:\Keyboard Layout\Preload'
$subsPath = 'HKCU:\Keyboard Layout\Substitutes'
# --- Create Language List ---
$list = New-WinUserLanguageList 'en-US'
$list = @($list[0], (New-WinUserLanguageList 'lv')[0], (New-WinUserLanguageList 'ru')[0])
Set-WinUserLanguageList $list -Force
# --- Lock UI Language ---
Set-WinUILanguageOverride -Language en-US
# --- Set Default Input Method ---
try { Set-WinDefaultInputMethodOverride -InputTip $usIntl -ea 0 } catch {}
# --- Remove Ghost Layouts ---
# rm 'HKCU:\Control Panel\International\User Profile' -Recurse -Force -ea 0
# --- Reapply Preload Layouts for Reliability ---
rm $preloadPath -Recurse -Force -ea 0
ni $preloadPath -Force | Out-Null
# --- Preload (Force fixed order) ---
sp 'HKCU:\Keyboard Layout\Preload' '1' '00020409' | Out-Null # US-International
sp 'HKCU:\Keyboard Layout\Preload' '2' '00010426' | Out-Null # Latvian QWERTY
sp 'HKCU:\Keyboard Layout\Preload' '3' '00000419' | Out-Null # Russian
# --- Substitutes (override defaults) ---
sp 'HKCU:\Keyboard Layout\Substitutes' '00000409' '00020409' | Out-Null
sp 'HKCU:\Keyboard Layout\Substitutes' '00000426' '00010426' | Out-Null
# --- Restore Region ---
Set-WinHomeLocation -GeoId 140 # Latvia
Set-Culture lv-LV
Write-Host "Языки настроены!" -f Green
}
'3' {
Write-Host "Применение визуальных твиков..." -f Yellow
# --- Классическое контекстное меню ---
ni "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" -Force | Out-Null
sp "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" "(Default)" "" -Force
# --- Drag & Drop для панели задач ---
sp "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" "EnableDragAndDrop" 1
# --- Звук ---
sp 'HKCU:\Software\Microsoft\Multimedia\Audio' UserDuckingPreference 0
rundll32 user32.dll,UpdatePerUserSystemParameters
gci "HKCU:\AppEvents\Schemes\Apps" -r |? {$_.PSChildName -match '\.Current$'} |% {sp $_.PSPath "(Default)" ""}
Write-Host "Готово!" -f Green
}
'4' {
Write-Host "Создание ярлыков..." -f Yellow
$logout = "TAAAAAEUAgAAAAAAwAAAAAAAAEa7AAgAIAAAAC/6ocXOVdwBUdMdV5at3AH1dKPFzlXcAQDgAAAAAAAABwAAADAGAAAAAAAAAAAAAEUBFAAfUOBP0CDqOmkQotgIACswMJ0ZAC9DOlwAAAAAAAAAAAAAAAAAAAAAAAAAVgAxAAAAAABkXA4EEABXaW5kb3dzAEAACQAEAO++gVipOmZcQZIuAAAA/N4YAAAAAQAAAAAAAAAAAAAAAAAAAMEV1gBXAGkAbgBkAG8AdwBzAAAAFgBaADEAAAAAAGVcVXIQAFN5c3RlbTMyAABCAAkABADvvoFYqTpmXHSSLgAAAMjmGAAAAAEAAAAAAAAAAAAAAAAAAADU5YsAUwB5AHMAdABlAG0AMwAyAAAAGABmADIAAOAAAG9bOQsgAHNodXRkb3duLmV4ZQAASgAJAAQA775vWzkLZly5jS4AAACmmQMAAAATAAAAAADwAAAAAAAAAAAAC+4WAXMAaAB1AHQAZABvAHcAbgAuAGUAeABlAAAAHAAAAFYAAAAcAAAAAQAAABwAAAA0AAAAAAAAAFUAAAAYAAAAAwAAAP+do6wQAAAAV2luZG93cwBDOlxXaW5kb3dzXFN5c3RlbTMyXHNodXRkb3duLmV4ZQAAJgAuAC4AXAAuAC4AXAAuAC4AXABXAGkAbgBkAG8AdwBzAFwAUwB5AHMAdABlAG0AMwAyAFwAcwBoAHUAdABkAG8AdwBuAC4AZQB4AGUAEwBDADoAXABXAEkATgBEAE8AVwBTAFwAcwB5AHMAdABlAG0AMwAyAAUALwBsACAALwBmABAAAAAFAACgJQAAAN0AAAAcAAAACwAAoHdOwRrnAl1Ot0Qusa5RmLfdAAAAYAAAAAMAAKBYAAAAAAAAAGx2bXhsMDM2MXp2cwAAAAD2Nzn+fc2GSLXGNsYn1Frso4sVcoMZ8RGC6QR/Dhho+vY3Of59zYZItcY2xifUWuyjixVygxnxEYLpBH8OGGj6UQIAAAkAAKBZAAAAMVNQU+0wvdpDAIlHp/jQE6RzZiI9AAAAZAAAAAAfAAAAFgAAAFMAeQBzAHQAZQBtADMAMgAgACgAQwA6AFwAVwBpAG4AZABvAHcAcwApAAAAAAAAAJEAAAAxU1BT4opYRrxMOEO7/BOTJphtznUAAAAEAAAAAB8AAAAxAAAAUwAtADEALQA1AC0AMgAxAC0AMQA0ADUANwA4ADAAMgAzADMANAAtADEANwA2ADUAMQA0ADYAOAA3ADcALQAyADAAOQAwADMAMgA4ADcANgA1AC0AOAAwADYAMQA1ADAAAAAAAAAAAACxAAAAMVNQUzDxJbfvRxoQpfECYIye66wtAAAACgAAAAAfAAAADQAAAHMAaAB1AHQAZABvAHcAbgAuAGUAeABlAAAAAAAVAAAADwAAAABAAAAAAGO6xs5V3AEVAAAADAAAAAAVAAAAAOAAAAAAAAApAAAABAAAAAAfAAAADAAAAEEAcABwAGwAaQBjAGEAdABpAG8AbgAAABUAAAAOAAAAAEAAAAD1dKPFzlXcAQAAAABxAAAAMVNQU6ZqYyg9ldIRtdYAwE/ZGNBVAAAAHgAAAAAfAAAAIQAAAEMAOgBcAFcAaQBuAGQAbwB3AHMAXABTAHkAcwB0AGUAbQAzADIAXABzAGgAdQB0AGQAbwB3AG4ALgBlAHgAZQAAAAAAAAAAADkAAAAxU1BTsRZtRK2NcEinSEAupD14jB0AAABoAAAAAEgAAAAvD5O0g5pLTbzHK4F+nVwTAAAAAAAAAAAAAAAA"
$shutdown = "TAAAAAEUAgAAAAAAwAAAAAAAAEa7AAgAIAAAAFAk6IjGVdwBmE3Rt/S23AEUc+mIxlXcAQDgAAAAAAAAAQAAALsGAAAAAAAAAAAAAEUBFAAfUOBP0CDqOmkQotgIACswMJ0ZAC9DOlwAAAAAAAAAAAAAAAAAAAAAAAAAVgAxAAAAAABxXBi4EABXaW5kb3dzAEAACQAEAO++gVipOnJcoYIuAAAASXQTAAAACQAAAAAAAAAAAAAAAAAAAP7pFgBXAGkAbgBkAG8AdwBzAAAAFgBaADEAAAAAAHJcLIMQAFN5c3RlbTMyAABCAAkABADvvoFYqTpyXCyDLgAAANrQEwAAAAoAAAAAAAAAAAAAAAAAAADZXEwAUwB5AHMAdABlAG0AMwAyAAAAGABmADIAAOAAAG9bWgMgAHNodXRkb3duLmV4ZQAASgAJAAQA775vW1oDclwAgy4AAAD3egMAAAAJAAAAAADwAAAAAAAAAAAA7PoAAXMAaAB1AHQAZABvAHcAbgAuAGUAeABlAAAAHAAAAFYAAAAcAAAAAQAAABwAAAA0AAAAAAAAAFUAAAAYAAAAAwAAADrmK0IQAAAAV2luZG93cwBDOlxXaW5kb3dzXFN5c3RlbTMyXHNodXRkb3duLmV4ZQAAJgAuAC4AXAAuAC4AXAAuAC4AXABXAGkAbgBkAG8AdwBzAFwAUwB5AHMAdABlAG0AMwAyAFwAcwBoAHUAdABkAG8AdwBuAC4AZQB4AGUAEwBDADoAXABXAEkATgBEAE8AVwBTAFwAcwB5AHMAdABlAG0AMwAyAAUALwBwACAALwBmABAAAAAFAACgJQAAAN0AAAAcAAAACwAAoHdOwRrnAl1Ot0Qusa5RmLfdAAAAYAAAAAMAAKBYAAAAAAAAAGx2bXhsMjA3MzAzagAAAACkNJ4frgG5SIHasyZxAfOaYR3Vb+Yi8RGDJ8hazwY9OaQ0nh+uAblIgdqzJnEB85phHdVv5iLxEYMnyFrPBj05UQIAAAkAAKBZAAAAMVNQU+0wvdpDAIlHp/jQE6RzZiI9AAAAZAAAAAAfAAAAFgAAAFMAeQBzAHQAZQBtADMAMgAgACgAQwA6AFwAVwBpAG4AZABvAHcAcwApAAAAAAAAAJEAAAAxU1BT4opYRrxMOEO7/BOTJphtznUAAAAEAAAAAB8AAAAxAAAAUwAtADEALQA1AC0AMgAxAC0AMQA0ADUANwA4ADAAMgAzADMANAAtADEANwA2ADUAMQA0ADYAOAA3ADcALQAyADAAOQAwADMAMgA4ADcANgA1AC0AOAAwADYAMQA1ADAAAAAAAAAAAACxAAAAMVNQUzDxJbfvRxoQpfECYIye66wtAAAACgAAAAAfAAAADQAAAHMAaAB1AHQAZABvAHcAbgAuAGUAeABlAAAAAAAVAAAADwAAAABAAAAAAG7qicZV3AEVAAAADAAAAAAVAAAAAOAAAAAAAAApAAAABAAAAAAfAAAADAAAAEEAcABwAGwAaQBjAGEAdABpAG8AbgAAABUAAAAOAAAAAEAAAAAUc+mIxlXcAQAAAABxAAAAMVNQU6ZqYyg9ldIRtdYAwE/ZGNBVAAAAHgAAAAAfAAAAIQAAAEMAOgBcAFcAaQBuAGQAbwB3AHMAXABTAHkAcwB0AGUAbQAzADIAXABzAGgAdQB0AGQAbwB3AG4ALgBlAHgAZQAAAAAAAAAAADkAAAAxU1BTsRZtRK2NcEinSEAupD14jB0AAABoAAAAAEgAAACV33cdTnP+TK+KW542nQjT"
$startmenu = "$env:appdata\Microsoft\Windows\Start Menu\Programs"
$logout | sc "$env:temp\logout.txt" -Encoding ASCII -Force
$shutdown | sc "$env:temp\shutdown.txt" -Encoding ASCII -Force
certutil -decode "$env:temp\logout.txt" "$startmenu\logout.lnk"
certutil -decode "$env:temp\shutdown.txt" "$startmenu\shutdown.lnk"
rd "$env:temp\logout.txt", "$env:temp\shutdown.txt" -Force
Write-Host "Ярлыки созданы в старт-меню!" -f Green
}
'0' {exit}
default {Write-Host "Неверный выбор." -f Red}
}
Write-Host; Write-Host "`nНажмите Enter, чтобы вернуться в меню..."; Read-Host
} while ($choice -ne '0')