Files
backup-srv1c/activation-windows.bat
T

89 lines
2.5 KiB
Batchfile

@echo off
chcp 65001 >nul
:: Проверка прав администратора
net session >nul 2>&1
if %errorlevel% neq 0 (
echo [!] Запустите скрипт от имени администратора.
pause
exit /b 1
)
echo ============================================
echo Активация Windows через KMS
echo ============================================
echo.
:: --- Ввод ключа продукта ---
:ask_key
set "PRODUCT_KEY="
set /p "PRODUCT_KEY=Введите ключ продукта: "
if "!PRODUCT_KEY!"=="" (
echo [!] Ключ не может быть пустым.
goto ask_key
)
:: --- Ввод адреса KMS-сервера ---
:ask_server
set "KMS_SERVER="
set /p "KMS_SERVER=Введите адрес KMS-сервера (host или host:port): "
if "!KMS_SERVER!"=="" (
echo [!] Адрес не может быть пустым.
goto ask_server
)
:: Если порт не указан — добавляем стандартный 1688
echo !KMS_SERVER! | find ":" >nul
if errorlevel 1 set "KMS_SERVER=!KMS_SERVER!:1688"
echo.
echo --------------------------------------------
echo Ключ: !PRODUCT_KEY!
echo Сервер: !KMS_SERVER!
echo --------------------------------------------
echo.
set "CONFIRM="
set /p "CONFIRM=Всё верно? (y/n): "
if /i not "!CONFIRM!"=="y" (
echo Отменено.
pause
exit /b 0
)
echo.
echo [1/4] Установка ключа продукта...
cscript //nologo %windir%\system32\slmgr.vbs /ipk !PRODUCT_KEY!
if !errorlevel! neq 0 (
echo [!] Не удалось установить ключ. Проверьте правильность.
pause
exit /b 1
)
echo [2/4] Настройка KMS-сервера ^(!KMS_SERVER!^)...
cscript //nologo %windir%\system32\slmgr.vbs /skms !KMS_SERVER!
if !errorlevel! neq 0 (
echo [!] Не удалось задать KMS-сервер.
pause
exit /b 1
)
echo [3/4] Активация...
cscript //nologo %windir%\system32\slmgr.vbs /ato
if !errorlevel! neq 0 (
echo.
echo [!] Активация не удалась. Код ошибки: !errorlevel!
echo Частые причины:
echo 0xC004F074 — сервер недоступен или не в домене
echo 0xC004F015 — неверный тип ключа для KMS
pause
exit /b 1
)
echo [4/4] Проверка статуса...
echo.
cscript //nologo %windir%\system32\slmgr.vbs /dli
echo.
echo [OK] Готово.
pause
endlocal