Fix: fix CRLF .bat files

This commit is contained in:
whoamikyo 2020-06-24 10:26:06 -03:00
parent 8471b2cb4d
commit d1c320cc6e
4 changed files with 1 additions and 725 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
*.bat text eol=crlf

View File

@ -1,379 +0,0 @@
@SETLOCAL EnableExtensions EnableDelayedExpansion
@echo off
pushd "%~dp0"
:: VARIABLES INSTALL
SET CMD=%SystemRoot%\system32\cmd.exe
SET LMESZINC=https://github.com/LmeSzinc/AzurLaneAutoScript.git
SET WHOAMIKYO=https://github.com/whoamikyo/AzurLaneAutoScript.git
rem SET ROOT_UPPER=%~dp0
rem SET ADB_PATH=%AZURLANESCRIPT%\python-3.7.6.amd64\Lib\site-packages\adbutils\binaries
:: -----------------------------------------------------------------------------
:: Make sure we're running with administrator privileges
echo.
echo :: Checking For Administrator Elevation...
echo.
net session >nul 2>&1
if %errorLevel% == 0 (
echo Elevation found! Proceeding...
goto menu
) else (
echo :: You are NOT running as Administrator
echo.
echo Right-click and select ^'Run as Administrator^' and try again.
echo Press any key to exit...
pause > NUL
exit
)
REM PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
:: -----------------------------------------------------------------------------
:: Make sure the second path exists. The first path won't be created until the second script is run
rem IF NOT EXIST !ADB_PATH! (ECHO Path not found: %ADB_PATH% && GOTO ExitBatch)
:: -----------------------------------------------------------------------------
:: Add paths
rem CALL :AddPath %ADB_PATH%
rem CALL :AddPath %GIT_PATH%
rem CALL :AddPath %AZURLANESCRIPT%
rem CALL :AddPath %ROOT_UPPER%
pause
:: Branch to UpdateEnv if we need to update
REM IF DEFINED UPDATE (GOTO UpdateEnv)
REM GOTO ExitBatch
:: -----------------------------------------------------------------------------
REM :UpdateEnv
REM ECHO Making updated PATH go live . . .
REM REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1
REM setx TEMPVAR 1 > nul 2>&1
REM REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1
REM IF NOT !cmdcmdline! == !CMDLINERUNSTR! (CALL :KillExplorer)
REM GOTO ExitBatch
:: -----------------------------------------------------------------------------
goto menu
:menu
cls
echo.
echo :: Easy install for ALAS
echo.
echo This script will install Python 3.7.6 + requirements.txt + ADB + GIT + CHOCOLATEY
echo.
echo :: For fresh install, Run step "1" and "2"
echo.
echo 1.Python 3.7.6 + ADB + GIT + requirements.txt
echo 2.Clone repository (Download the latest version from LmeSzinc repository)
echo 3.Programs (ADB + GIT Alternative way with CHOCOLATEY)
echo 4.Updater ONLY (Do not update if you are doing a fresh install)
echo.
echo JUST RUN UPDATER INSIDE AzurLaneAutoScript FOLDER
echo.
echo Install in order
echo.
echo :: Type a 'number' and press ENTER
echo :: Type 'exit' to quit
echo.
set /P menu=
if %menu%==1 GOTO python
if %menu%==2 GOTO clone
if %menu%==3 GOTO programs
if %menu%==4 GOTO updater
if %menu%==exit GOTO EOF
else (
cls
echo.
echo :: Incorrect Input Entered
echo.
echo Please type a 'number' or 'exit'
echo Press any key to return to the menu...
echo.
pause > NUL
goto menu
)
:: -----------------------------------------------------------------------------
:programs
cls
echo.
echo :: Checking For Internet Connection...
echo.
timeout /t 2 /nobreak > NUL
ping -n 1 archlinux.org -w 20000 >nul
if %errorlevel% == 0 (
echo Internet Connection Found! Proceeding..
) else (
echo :: You are NOT connected to the Internet
echo.
echo Please enable your Networking adapter and connect to try again.
echo Press any key to retry...
pause > NUL
goto packages
)
cls
echo.
echo :: Installing Packages ADB + GIT + CHOCOLATEY
echo :: If you already have any of these packages installed
echo :: you will probably have an error installing that package
echo :: you can try to proceed anyway
echo :: it might work if there is nothing wrong with the previous installation
echo :: if you have problems I suggest uninstalling all packages mentioned in the control panel (windows)
echo.
timeout /t 1 /nobreak > NUL
SET PATH=%PATH%;%PROGRAMDATA%\chocolatey\lib\adb\tools\platform-tools\;%PROGRAMFILES%\Git\cmd;%PROGRAMDATA%\chocolatey\bin
echo Installing chocolatey on this machine
@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))">>chocolatey-%DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%.log && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin
)
echo Installing Essentials programs, It may take
@powershell -NoProfile -ExecutionPolicy Bypass -Command "choco install -y --force --allow-empty-checksums adb git">>Essentials-%DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%.log
)
call refreshenv
goto menu
:: -----------------------------------------------------------------------------
:: killing adb server
:killadb
call %ADB_PATH% --version >nul
if %errorlevel% == 0 (
echo ADB Found! Proceeding..
echo killing adb server..
call %ADB_PATH% kill-server > nul 2>&1
goto menu
) else (
echo :: ADB not found, maybe there was an installation issue, try opening another CMD window and type choco install adb
echo.
pause > NUL
goto menu
)
:: -----------------------------------------------------------------------------
:clone
SET AZURLANESCRIPT=%~dp0AzurLaneAutoScript
SET GIT_PATH=%AZURLANESCRIPT%\python-3.7.6.amd64\Git\cmd
SET GIT=%GIT_PATH%\git.exe
call %GIT% --version >nul
if %errorlevel% == 0 (
echo Cloning repository
echo GIT Found! Proceeding..
echo Cloning repository...
cd %AZURLANESCRIPT%
echo Deleting folder unused files
for /D %%D in ("*") do (
if /I not "%%~nxD"=="python-3.7.6.amd64" rd /S /Q "%%~D"
)
for %%F in ("*") do (
del "%%~F"
)
echo ## initializing..
call %GIT% init
echo ## adding origin..
call %GIT% remote add origin %LMESZINC%
echo ## pulling project...
call %GIT% pull origin master
echo ## setting default branch...
call %GIT% branch --set-upstream-to=origin/master master
call %GIT% remote add whoamikyo %WHOAMIKYO%
echo The installation was successful
echo Press any key to proceed
pause > NUL
goto menu
) else (
echo :: Git not found, maybe there was an installation issue, try opening another CMD window and type choco install git
echo.
pause > NUL
)
:: -----------------------------------------------------------------------------
:python
cls
echo.
echo :: Python 3.7.6 + ADB + GIT + requirements.txt
echo.
echo.
SET PYTHON=%~dp0AzurLaneAutoScript/python-3.7.6.amd64/python.exe
SET AZURLANESCRIPT=%~dp0AzurLaneAutoScript
SET FILE_URL=https://gitlab.com/whoamikyo/alas-venv/-/raw/master/python.zip
SET FILE_DEST=%AZURLANESCRIPT%\pythonpackage.zip
if not exist %AZURLANESCRIPT% (
echo WILL BE CREATED A FOLDER "AzurLaneAutoScript"
echo DO NOT RENAME THE FOLDER NEVER
mkdir %AZURLANESCRIPT%
)
if not exist "%FILE_DEST%" (
echo Downloading with powershell: %FILE_URL% to %FILE_DEST%
powershell.exe -command "$webclient = New-Object System.Net.WebClient; $url = \"%FILE_URL%\"; $file = \"%FILE_DEST%\"; $webclient.DownloadFile($url,$file);"
echo Expanding with powershell to: %AZURLANESCRIPT%
powershell -command "$shell_app=new-object -com shell.application; $zip_file = $shell_app.namespace(\"%FILE_DEST%\"); $destination = $shell_app.namespace(\"%AZURLANESCRIPT%\"); $destination.Copyhere($zip_file.items())"
) else (
echo "pythonpackage.zip already downloaded, delete to re-download"
pause > NUL
)
call %PYTHON% --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo initializing uiautomator2..
call %PYTHON% -m uiautomator2 init
echo The installation was successful
echo Press any key to proceed
pause > NUL
goto menu
) else (
echo :: it was not possible to install uiautomator2
echo :: make sure you have a folder "python-3.7.6.amd64"
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
goto menu
)
:: -----------------------------------------------------------------------------
:updater
SET GIT_ALAS=%~dp0python-3.7.6.amd64\Git\cmd\git.exe
SET GLP=%GIT_ALAS%
SET ALAS_PY=alas.py
if exist %ALAS_PY% (
goto updater_menu
) else (
cd AzurLaneAutoScript
echo.
goto updater_menu
)
:: -----------------------------------------------------------------------------
:updater_menu
cls
echo.
echo :: This update only will work if you downloaded ALAS with this file using option 2. clone
echo.
echo ::DISCLAIMER::
echo IF YOU GET THE FOLLOWING ERROR:
echo "error: Your local changes to the following files would be overwritten by merge:Easy_Install-V2.bat"
echo YOU NEED RE-DOWNLOAD ONLY Easy_Install-V2.bat FILE FROM REPOSITORY AND OVERWRITTEN THE OLD FOR NEW FILE
echo
echo JUST RUN UPDATER INSIDE AzurLaneAutoScript FOLDER
echo.
echo 1. https://github.com/LmeSzinc/AzurLaneAutoScript (Main Repo, When in doubt, use it)
echo 2. https://github.com/whoamikyo/AzurLaneAutoScript (Mirrored Fork)
echo 3. https://github.com/whoamikyo/AzurLaneAutoScript (nightly build, dont use)
echo 4. Back to main menu
echo.
echo :: Type a 'number' and press ENTER
echo :: Type 'exit' to quit
echo.
set /P choice=
if %choice%==1 GOTO LmeSzinc
if %choice%==2 GOTO whoamikyo
if %choice%==3 GOTO nightly
if %choice%==4 GOTO menu
if %choice%==exit GOTO EOF
else (
cls
echo.
echo :: Incorrect Input Entered
echo.
echo Please type a 'number' or 'exit'
echo Press any key to return to the menu...
echo.
pause > NUL
goto updater_menu
)
:: -----------------------------------------------------------------------------
:LmeSzinc
call %GLP% --version >nul
if %errorlevel% == 0 (
echo GIT Found! Proceeding..
echo Updating from LmeSzinc repository..
call %GLP% fetch origin master
call %GLP% reset --hard origin/master
call %GLP% pull --ff-only origin master
echo DONE!
echo Press any key to proceed
pause > NUL
goto updater_menu
) else (
echo :: Git not detected, maybe there was an installation issue
echo check if you have this directory:
echo AzurLaneAutoScript\python-3.7.6.amd64\Git\cmd
echo.
pause > NUL
)
:: -----------------------------------------------------------------------------
:whoamikyo
call %GLP% --version >nul
if %errorlevel% == 0 (
echo GIT Found! Proceeding..
echo Updating from whoamikyo repository..
call %GLP% fetch whoamikyo master
call %GLP% reset --hard whoamikyo/master
call %GLP% pull --ff-only whoamikyo master
echo DONE!
echo Press any key to proceed
pause > NUL
goto updater_menu
) else (
echo :: Git not detected, maybe there was an installation issue
echo check if you have this directory:
echo AzurLaneAutoScript\python-3.7.6.amd64\Git\cmd
pause > NUL
goto updater_menu
)
:: -----------------------------------------------------------------------------
:nightly
call %GLP% --version >nul
if %errorlevel% == 0 (
echo GIT Found! Proceeding..
echo Updating from whoamikyo nightly repository..
call %GLP% fetch whoamikyo nightly
call %GLP% reset --hard whoamikyo/nightly
call %GLP% pull --ff-only whoamikyo nightly
echo Press any key to proceed
pause > NUL
goto updater_menu
) else (
echo :: Git not detected, maybe there was an installation issue
echo check if you have this directory:
echo AzurLaneAutoScript\python-3.7.6.amd64\Git\cmd
echo.
pause > NUL
goto updater_menu
)
:: -----------------------------------------------------------------------------
rem :AddPath <pathToAdd>
rem ECHO %PATH% | FINDSTR /C:"%~1" > nul
rem IF ERRORLEVEL 1 (
rem REG add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v PATH /t REG_SZ /d "%PATH%;%~1" > nul 2>&1
rem IF ERRORLEVEL 0 (
rem ECHO Adding %1 . . . Success!
rem SET "PATH=%PATH%;%~1"
rem SET UPDATE=1
rem ) ELSE (
rem ECHO Adding %1 . . . FAILED. Run this script with administrator privileges.
rem )
rem ) ELSE (
rem ECHO Skipping %1 - Already in PATH
rem )
rem EXIT /b
:: -----------------------------------------------------------------------------
rem :KillExplorer
rem ECHO Your desktop is being restarted, please wait. . .
rem ping -n 5 127.0.0.1 > NUL 2>&1
rem ECHO Killing process Explorer.exe. . .
rem taskkill /f /im explorer.exe
rem ECHO.
rem ECHO Your desktop is now loading. . .
rem ping -n 5 127.0.0.1 > NUL 2>&1
rem ECHO.
rem ping -n 5 127.0.0.1 > NUL 2>&1
rem START explorer.exe
rem START explorer.exe %CD%
rem EXIT /b
:: -----------------------------------------------------------------------------

125
alas.bat
View File

@ -1,125 +0,0 @@
@SETLOCAL EnableExtensions EnableDelayedExpansion
@echo off
title ALAS run
SET ADB=%~dp0python-3.7.6.amd64\Lib\site-packages\adbutils\binaries\adb.exe
SET PYTHON=%~dp0python-3.7.6.amd64\python.exe
call %ADB% kill-server > nul 2>&1
set SCREENSHOT_FOLDER=%~dp0screenshots
if not exist %SCREENSHOT_FOLDER% (
mkdir %SCREENSHOT_FOLDER%
)
if not exist adb_port.ini (
cd . > adb_port.ini
)
REM if adb_port is empty, prompt HOST:PORT
set "adb_empty=*adb_port.ini"
for %%A in (%adb_empty%) do if %%~zA==0 (
echo enter your HOST:PORT eg: 127.0.0.1:5555 for default bluestacks
echo WARNING! DONT FORGET TO SETUP AGAIN IN, ALAS ON EMULATOR SETTINGS FUNCTION
set /p adb_input=
)
REM if adb_input = 0 load from adb_port.ini
if [%adb_input%]==[] (
goto load
)
REM write adb_input on adb_port.ini
echo %adb_input% >> adb_port.ini
REM Load adb_port.ini
:load
REM
set /p ADB_PORT=<adb_port.ini
echo connecting at %ADB_PORT%
call %ADB% connect %ADB_PORT%
::echo initializing uiautomator2
::%~dp0python-3.7.6.amd64/python.exe -m uiautomator2 init
:: timout
PowerShell -Command "Start-Sleep -s 4" > nul 2>&1
goto alas
:alas
cls
echo.
echo :: Alas run
echo.
echo Choose your server
echo.
echo 1. EN
echo 2. CN
echo 3. JP
echo.
echo :: Type a 'number' and press ENTER
echo :: Type 'exit' to quit
echo.
set /P menu=
if %menu%==1 GOTO en
if %menu%==2 GOTO cn
if %menu%==3 GOTO jp
if %menu%==exit GOTO EOF
else (
cls
echo.
echo :: Incorrect Input Entered
echo.
echo Please type a 'number' or 'exit'
echo Press any key to retry to the menu...
echo.
pause > NUL
goto alas
)
:en
call %PYTHON% --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening alas_en.pyw...
call %PYTHON% alas_en.pyw
) else (
echo :: it was not possible to open alas_en.pyw, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 10" > nul 2>&1
goto alas
:cn
call %PYTHON% --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening alas_en.pyw...
call %PYTHON% alas_cn.pyw
) else (
echo :: it was not possible to open alas_cn.pyw, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
goto alas
:jp
call %PYTHON% --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening alas_en.pyw...
call %PYTHON% alas_jp.pyw
) else (
echo :: it was not possible to open alas_jp.pyw, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
goto alas
:EOF
exit

View File

@ -1,221 +0,0 @@
@echo off
setlocal EnableDelayedExpansion
title Dev_tools
set SCREENSHOT_FOLDER=%~dp0screenshots
if not exist %SCREENSHOT_FOLDER% (
mkdir %SCREENSHOT_FOLDER%
)
if not exist adb_port.ini (
cd . > adb_port.ini
)
set "adb_empty=*adb_port.ini"
for %%A in (%adb_empty%) do if %%~zA==0 (
echo enter your HOST:PORT eg: 127.0.0.1:5555 for default bluestacks
set /p adb_input=
)
REM if adb_input = 0 load from adb_port.ini
if [%adb_input%]==[] (
goto load
)
REM write adb_input on adb_port.ini
echo %adb_input% >> adb_port.ini
REM Load adb_port.ini
:load
REM
set /p ADB_PORT=<adb_port.ini
echo connecting at %ADB_PORT%
adb connect %ADB_PORT%
:dev_menu
cls
echo.
echo :: Dev_tools
echo.
echo 1. emulator_test
echo 2. button_extract
echo 3. grids_debug
echo 4. item_stastistics
echo 5. relative_crop
echo 6. map_extractor
echo 7. word_template_extractor
echo 8. ADB SCREENSHOT (for ASSETS)
echo 9. Uiautomator2 SCREENSHOT (for ASSETS)
echo.
echo :: Type a 'number' and press ENTER
echo :: Type 'exit' to quit
echo.
set /P menu=
if %menu%==1 GOTO emulator_test
if %menu%==2 GOTO button_extract
if %menu%==3 GOTO grids_debug
if %menu%==4 GOTO item_stastistics
if %menu%==5 GOTO relative_crop
if %menu%==6 GOTO map_extractor
if %menu%==7 GOTO word_template_extractor
if %menu%==8 GOTO adbss
if %menu%==9 GOTO u2ss
if %menu%==exit GOTO EOF
else (
cls
echo.
echo :: Incorrect Input Entered
echo.
echo Please type a 'number' or 'exit'
echo Press any key to retry to the menu...
echo.
pause > NUL
goto dev_menu
)
:emulator_test
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.emulator_test
echo.
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
goto dev_menu
:button_extract
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.button_extract
) else (
echo :: it was not possible to open dev_tools.button_extract, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
goto dev_menu
:grids_debug
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.grids_debug
) else (
echo :: it was not possible to open dev_tools.grids_debug, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 10" > nul 2>&1
goto dev_menu
:item_stastistics
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.item_stastistics
) else (
echo :: it was not possible to open dev_tools.item_stastistics, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 10" > nul 2>&1
goto dev_menu
:relative_crop
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.relative_crop
) else (
echo :: it was not possible to open dev_tools.relative_crop, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
goto dev_menu
:map_extractor
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.map_extractor
) else (
echo :: it was not possible to open dev_tools.map_extractor, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
goto dev_menu
:word_template_extractor
call %~dp0python-3.7.6.amd64/python.exe --version >nul
if %errorlevel% == 0 (
echo Python Found! Proceeding..
echo Opening dev_tools.button_extract...
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.word_template_extractor
) else (
echo :: it was not possible to open dev_tools.word_template_extractor, make sure you have a folder python-3.7.6.amd64
echo :: inside AzurLaneAutoScript folder.
echo.
pause > NUL
)
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
goto dev_menu
:adbss
echo Enter any text/letter instead of the file name, do not enter spaces, enter exit to exit
echo or enter alas to back to main menu
echo.
:set
SET time=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
SET name=%time%
SET /P name=
IF /I '%name%'=='exit' goto EOF
IF /I '%name%'=='alas' goto dev_menu
adb -s %ADB_PORT% shell mkdir /sdcard/dcim/Screenshot 2>nul
adb -s %ADB_PORT% shell screencap -p /sdcard/dcim/Screenshot/%name%.png
adb -s %ADB_PORT% pull /sdcard/dcim/Screenshot/%name%.png %SCREENSHOT_FOLDER%\%name%.png
adb -s %ADB_PORT% shell rm /sdcard/dcim/Screenshot/%name%.png
echo.
echo The file %name%.png has been copied to ./screenshots/ directory
echo.
SET time=
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
if NOT ["%errorlevel%"]==["0"] (
pause
exit /b %errorlevel%
)
goto adbss
:u2ss
%~dp0python-3.7.6.amd64/python.exe -m dev_tools.uiautomator2_screenshot
echo The file *.png has been copied to ./screenshots/ directory
PowerShell -Command "Start-Sleep -s 3" > nul 2>&1
if NOT ["%errorlevel%"]==["0"] (
pause
exit /b %errorlevel%
)
echo.
goto dev_menu
:EOF
exit