echo "Выбор системы питания"
echo "ЭНЕРГОСБЕРЕГАЮЩАЯ"
echo "СБАЛАНСИРОВАННАЯ"
echo "ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ"
Powercfg -SETACTIVE
айдишник на свои, полученные из предыдущего шага@echo off
chcp 65001>nul
call :ECHO " --= Выбор системы питания =--" 0B
echo.
call :ECHO " E - ЭНЕРГОСБЕРЕГАЮЩАЯ" 0E
echo.
call :ECHO " S - СБАЛАНСИРОВАННАЯ" 0A
echo.
call :ECHO " V - ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ" 0D
echo.
call :ECHO " -----------------------------" 0B
echo.
call :ECHO " по умолчанию = " 0B
call :ECHO " ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ" 0C
echo.
call :ECHO " время для выбора " 0B
call :ECHO "7сек" 0C
echo.
CHOICE /T 7 /C ESV /D v /M "Сделайте выбор"
if %errorlevel% == 1 goto energo
if %errorlevel% == 2 goto sbalans
if %errorlevel% == 3 goto visoko
:energo
call :ECHO " -----------------------------" 0B
echo.
call :ECHO " выбрана" 0B
call :ECHO " ЭНЕРГОСБЕРЕГАЮЩАЯ" 0E
Powercfg -SETACTIVE a1841308-3541-4fab-bc81-f71556f20b4a
goto saz
:sbalans
call :ECHO " -----------------------------" 0B
echo.
call :ECHO " выбрана" 0B
call :ECHO " СБАЛАНСИРОВАННАЯ" 0A
Powercfg -SETACTIVE 381b4222-f694-41f0-9685-ff5bb260df2e
goto saz
:visoko
call :ECHO " -----------------------------" 0B
echo.
call :ECHO " выбрана" 0B
call :ECHO " ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ" 0D
Powercfg -SETACTIVE 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
:saz
echo.
echo " Завершение программы через 3 сек"
>nul timeout/nobreak 3
chcp 866>nul
exit /b
:ECHO
chcp 866>nul
for /f %%i in ('"prompt $h& for %%i in (.) do rem"') do (set Z=%%i)
pushd "%TEMP%" && (
<nul>"%~1^" set /p="%Z%%Z% %Z%%Z%"
findstr /a:%2 . "%~1^*"
del "%~1^"
popd
)
chcp 65001>nul
exit /b
CHOICE /T 7 /C ESV /D v /M "Сделайте выбор"
изменяйте на какие буквы будет реакция выбора 'ESV', а между /D и /M - какой выбор по умолчанию. Add-Type -AssemblyName System.Windows.Forms
# Создание формы
$form = New-Object System.Windows.Forms.Form
$form.Text = "Выбор системы питания"
$form.Size = New-Object System.Drawing.Size(300, 200)
$form.StartPosition = "CenterScreen"
$form.FormBorderStyle = [System.Windows.Forms.FormBorderStyle]::FixedSingle
$form.MaximizeBox = $false
# Создание метки
$label = New-Object System.Windows.Forms.Label
$label.Text = "Выберите схему питания:"
$label.AutoSize = $true
$label.Location = New-Object System.Drawing.Point(10, 20)
$form.Controls.Add($label)
# Создание радиокнопок
$radioButton1 = New-Object System.Windows.Forms.RadioButton
$radioButton1.Text = "ЭНЕРГОСБЕРЕГАЮЩАЯ"
$radioButton1.AutoSize = $true
$radioButton1.Location = New-Object System.Drawing.Point(10, 50)
$form.Controls.Add($radioButton1)
$radioButton2 = New-Object System.Windows.Forms.RadioButton
$radioButton2.Text = "СБАЛАНСИРОВАННАЯ"
$radioButton2.AutoSize = $true
$radioButton2.Location = New-Object System.Drawing.Point(10, 75)
$radioButton2.Checked = $true
$form.Controls.Add($radioButton2)
$radioButton3 = New-Object System.Windows.Forms.RadioButton
$radioButton3.Text = "ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ"
$radioButton3.AutoSize = $true
$radioButton3.Location = New-Object System.Drawing.Point(10, 100)
$form.Controls.Add($radioButton3)
# Создание кнопки
$button = New-Object System.Windows.Forms.Button
$button.Text = "Выбрать"
$button.Location = New-Object System.Drawing.Point(10, 130)
$button.Add_Click({
if ($radioButton1.Checked) {
$selectedOption = "ЭНЕРГОСБЕРЕГАЮЩАЯ"
} elseif ($radioButton2.Checked) {
$selectedOption = "СБАЛАНСИРОВАННАЯ"
} elseif ($radioButton3.Checked) {
$selectedOption = "ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ"
}
[System.Windows.Forms.MessageBox]::Show("Выбрана схема питания: $selectedOption", "Результат")
$form.Close()
})
$form.Controls.Add($button)
# Отображение формы
$form.Add_Shown({$form.Activate()})
[void]$form.ShowDialog()