chcp 65001
if [%1 ]== [echo_on] goto : program
: echo_no
set TEMP_ECHO_NO = TRUE
@ echo off
: program
if NOT " %PYTHON_CONFIGURE% " == " " goto : echo_check
set PYTHON_CONFIGURE = %~f0
set CD_PREV = %cd%
rem "%~dp0..\Resources" - У С Т А Н О В К А ПУТИ О Т РАСПОЛОЖЕНИЯ ФАЙЛА, В К О Т О Р О М НАПИСАН ЭТОТ Т Е К С Т . ВНИМАНИЕ! ПОСЛЕ %~dp0 СИМВОЛ \ СТАВИТЬ Н Е ТРЕБУЕТСЯ
rem "%cd%\..\Resources" - У С Т А Н О В К А ПУТИ О Т РАБОЧЕЙ ДИРЕКТОРИИ, В КОТОРОЙ БЫЛ ВЫЗВАН ЭТОТ СКРИПТ. ВНИМАНИЕ! ПОСЛЕ %cd% СИМВОЛ \ СТАВИТЬ ТРЕБУЕТСЯ ОБЯЗАТЕЛЬНО
rem Пример использования python-win-configure.cmd python - выполнить команду python в настроенном окружении
goto comment_set_path
rem ПРИМЕР КОНСТРУКЦИИ ДЛЯ ДОБАВЛЕНИЯ ДИРЕКТОРИИ В ПЕРЕМЕННУЮ ОКРУЖЕНИЯ PATH
set TEMP_LOCATION = " %~dp0 ..\Resources\WPy64-3720\python-3.7.2.amd64 "
cd /d %TEMP_LOCATION%
set PATH = %cd% ;%PATH%
rem ВНИМАНИЕ! З Н А К = ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВПРИТЫК С ПЕРЕМЕННОЙ ОКРУЖЕНИЯ И ЗНАЧЕНИЕМ - ИНАЧЕ У С Т А Н О В К А ЗНАЧЕНИЯ БУДЕТ ПРОИЗВЕДЕНА Н Е К О Р Р Е К Т Н О
: comment_set_path
goto comment_set_pythonpath
rem ПРИМЕР КОНСТРУКЦИИ ДЛЯ ДОБАВЛЕНИЯ ДИРЕКТОРИИ В ПЕРЕМЕННУЮ ОКРУЖЕНИЯ PYTHONPATH
set TEMP_LOCATION = " %~dp0 ..\Sources "
cd /d %TEMP_LOCATION%
set PYTHONPATH = %cd% ;%PYTHONPATH%
rem ВНИМАНИЕ! З Н А К = ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВПРИТЫК С ПЕРЕМЕННОЙ ОКРУЖЕНИЯ И ЗНАЧЕНИЕМ - ИНАЧЕ У С Т А Н О В К А ЗНАЧЕНИЯ БУДЕТ ПРОИЗВЕДЕНА Н Е К О Р Р Е К Т Н О
: comment_set_pythonpath
rem З О Н А УСТАНОВКИ ПЕРЕМЕННЫХ ОКРУЖЕНИЯ!
: configure
set TEMP_LOCATION = " %~dp0 ..\Resources\WPy64-3720\python-3.7.2.amd64\Scripts "
cd /d %TEMP_LOCATION%
set PATH = %cd% ;%PATH%
set TEMP_LOCATION = " %~dp0 ..\Resources\WPy64-3720\python-3.7.2.amd64 "
cd /d %TEMP_LOCATION%
set PATH = %cd% ;%PATH%
set TEMP_LOCATION = " %~dp0 ..\Sources "
cd /d %TEMP_LOCATION%
set PYTHONPATH = %cd% ;%PYTHONPATH%
rem восстановление каталога рабочей директории программы
cd /d %CD_PREV%
rem выполнить вызов, если есть параметры, начиная с %2+
if " %1 " == " " goto : echo_check
set ORPA_ARGV =
rem один shift - все параметры, начиная с %2 (или с %1, если не echo_on)
if " %1 " == " echo_on " shift
: loop1
if " %1 " == " " goto after_loop
if " %ORPA_ARGV% " == " " goto : no_param
set ORPA_ARGV = %ORPA_ARGV% %1
goto : loop1_next
: no_param
set ORPA_ARGV = %1
: loop1_next
shift
goto loop1
: after_loop
echo PYTHON-CONFIGURE: ОБНАРУЖЕНЫ ПАРАМЕТРЫ ИНИЦИАЛИЗАЦИИ ПРОГРАММЫ: %ORPA_ARGV%
: echo_check
rem включить Echo, если он был принудительно выключен
if NOT [%TEMP_ECHO_NO% ]== [] goto : echo_on
goto : eof
: echo_on
@ echo on
: eof
if " %ORPA_ARGV% " == " " goto : eof2
%ORPA_ARGV%
pause > nul
: eof2