Чтобы в автоматическом режиме «втихую» (silent) установить Python 2.7 можно использовать следующий bat-файл.
Rem Отключаем вывод самих команд на экран
@echo off
Rem Предполагаем, что на Windows XP скрипт запускается администратором.
Rem Для операционных систем Vista+ проверка прав админа осуществляется.
rem Получаем версию ОС
ver | find "5.1."
rem Windows XP ?
If %errorlevel%==0 (
rem Пропускаем проверку админских прав
GOTO SKIPADMIN
)
SET HasAdminRights=0
FOR /F %%i IN ('WHOAMI /PRIV /NH') DO (
IF "%%i"=="SeTakeOwnershipPrivilege" SET HasAdminRights=1
)
IF NOT %HasAdminRights%==1 (
ECHO .
ECHO Этот скрипт необходимо запускать от имени администратора.
ECHO .
GOTO END
)
:SKIPADMIN
rem Добавляем утилиту certutil.exe в исключения брандмауера Windows
netsh advfirewall firewall del rule name="Certutil"
netsh firewall add allowedprogram "C:\Windows\System32\certutil.exe" Certutil
netsh advfirewall firewall add rule name="Certutil" dir=in action=allow program="C:\Windows\System32\certutil.exe"
rem ****************************************************************************************
rem Начинаем устанавливать все программы по очереди
rem ****************************************************************************************
mkdir C:\Windows\Temp\Mihanikus
cd C:\Windows\Temp\Mihanikus
ECHO .
ECHO Install curl
ECHO .
mkdir "C:\Program Files\curl\"
If exist "%programfiles(x86)%" (
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win64/libcurl-x64.dll" "C:\Program Files\curl\libcurl-x64.dll"
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win64/curl.exe" "C:\Program Files\curl\curl.exe"
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win64/curl-ca-bundle.crt" "C:\Program Files\curl\curl-ca-bundle.crt"
) else (
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win32/libcurl.dll" "C:\Program Files\curl\libcurl.dll"
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win32/curl.exe" "C:\Program Files\curl\curl.exe"
certutil -urlcache -split -f "http://repo.mihanik.net/curl-7.65.1/win32/curl-ca-bundle.crt" "C:\Program Files\curl\curl-ca-bundle.crt"
)
ECHO .
ECHO Install Python
ECHO .
If exist "%programfiles(x86)%" (
"C:\Program Files\curl\curl.exe" -o "C:\Windows\Temp\Mihanikus\python-2.7.17.amd64.msi" "http://repo.mihanik.net/python/python-2.7.17.amd64.msi"
start /wait python-2.7.17.amd64.msi /passive /norestart ALLUSERS=1 ADDLOCAL=ALL
) else (
"C:\Program Files\curl\curl.exe" -o "C:\Windows\Temp\Mihanikus\python-2.7.17.msi" "http://repo.mihanik.net/python/python-2.7.17.msi"
start /wait python-2.7.17.msi /passive /norestart ALLUSERS=1 ADDLOCAL=ALL
)
rem Ассоциируем файлы .py с интерпретатором Python и настраиваем PATH
setx PATH "C:\Python27\;C:\Python27\Scripts;%Path%"
assoc .py=Python.File
ftype Python.File=C:\Python27\python.exe "%1" %*
rem Устанавливаем дополнительные модули
pip install pywin32
pip install WMI
ECHO .
ECHO Всё!
ECHO .
:END
PAUSE
EXIT /B
Этот скрипт берёт установочный комплект Python с моего сайта repo.mihanik.net. Если вы захотите использовать свои ссылки для скачивания, вам нужно будет доработать текст скрипта.
Замечание!!!
Для ОС Windows XP не делается проверка на наличия администраторских прав!
В этом случае уже вы самостоятельно отвечаете за наличие нужных прав у пользователя, запускающего скрипт.
