forked from BiFangKNT/mtga
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrun_mtga_gui_en.bat
More file actions
165 lines (142 loc) · 4.1 KB
/
run_mtga_gui_en.bat
File metadata and controls
165 lines (142 loc) · 4.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
::[Bat To Exe Converter]
::
::YAwzoRdxOk+EWAjk
::fBw5plQjdCyDJF6N4EolKidZWAODAGK5CbsP1O6r7ejU8HIfU689dI7Y0fqHI+9z
::YAwzuBVtJxjWCl3EqQJgSA==
::ZR4luwNxJguZRRnk
::Yhs/ulQjdF+5
::cxAkpRVqdFKZSzk=
::cBs/ulQjdF+5
::ZR41oxFsdFKZSTk=
::eBoioBt6dFKZSDk=
::cRo6pxp7LAbNWATEpCI=
::egkzugNsPRvcWATEpCI=
::dAsiuh18IRvcCxnZtBJQ
::cRYluBh/LU+EWAnk
::YxY4rhs+aU+JeA==
::cxY6rQJ7JhzQF1fEqQJQ
::ZQ05rAF9IBncCkqN+0xwdVs0
::ZQ05rAF9IAHYFVzEqQJQ
::eg0/rx1wNQPfEVWB+kM9LVsJDGQ=
::fBEirQZwNQPfEVWB+kM9LVsJDGQ=
::cRolqwZ3JBvQF1fEqQJQ
::dhA7uBVwLU+EWDk=
::YQ03rBFzNR3SWATElA==
::dhAmsQZ3MwfNWATElA==
::ZQ0/vhVqMQ3MEVWAtB9wSA==
::Zg8zqx1/OA3MEVWAtB9wSA==
::dhA7pRFwIByZRRnk
::Zh4grVQjdCyDJF6N4EolKidZWAODAEaOIZQjz93S0P6CsVlMGucnfe8=
::YB416Ek+ZW8=
::
::
::978f952a14a936cc963da21a135fa983
@echo off
chcp 65001
setlocal enabledelayedexpansion
:: Check administrator privileges and auto-elevate
net session >nul 2>&1
if %ERRORLEVEL% neq 0 (
echo Administrator privileges required, auto-elevating...
powershell -Command "Start-Process '%~f0' -Verb RunAs"
exit /b
)
:: Set window title
title MTGA GUI Launcher (Administrator)
:: Set console color
color 0A
:: Get current script directory
set "SCRIPT_DIR=%~dp0"
set "SCRIPT_DIR=%SCRIPT_DIR:~0,-1%"
:: Check if uv is installed
where uv >nul 2>nul
if %ERRORLEVEL% neq 0 (
echo uv not installed, starting automatic installation...
echo Installing uv via PowerShell, please wait...
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
if %ERRORLEVEL% neq 0 (
echo uv installation failed, error code: %ERRORLEVEL%
pause
exit /b 1
)
echo uv installation successful!
:: Refresh environment variables
call refreshenv >nul 2>nul
:: Check if uv is available again
where uv >nul 2>nul
if %ERRORLEVEL% neq 0 (
echo Warning: uv still not found after installation, please restart command prompt
echo or manually add uv to PATH environment variable
pause
exit /b 1
)
)
echo uv detected and ready
:: Set Python virtual environment paths
set "VENV_DIR=%SCRIPT_DIR%\.venv"
set "VENV_PYTHON=%VENV_DIR%\Scripts\python.exe"
set "VENV_ACTIVATE=%VENV_DIR%\Scripts\activate.bat"
:: Set OpenSSL path
set "OPENSSL_DIR=%SCRIPT_DIR%\openssl"
:: Check if virtual environment exists
if not exist "%VENV_PYTHON%" (
echo Virtual environment does not exist, creating...
:: Switch to script directory
cd /d "%SCRIPT_DIR%"
:: Install Python 3.13 using uv
echo Installing Python 3.13...
uv python install 3.13
if %ERRORLEVEL% neq 0 (
echo Python 3.13 installation failed
pause
exit /b 1
)
:: Create virtual environment
echo Creating virtual environment...
uv venv --python 3.13
if %ERRORLEVEL% neq 0 (
echo Virtual environment creation failed
pause
exit /b 1
)
:: Sync dependencies
echo Syncing dependencies...
uv sync
if %ERRORLEVEL% neq 0 (
echo Dependency sync failed
pause
exit /b 1
)
echo Virtual environment and dependencies installation completed!
)
:: Check if OpenSSL exists
if not exist "%OPENSSL_DIR%\openssl.exe" (
echo Error: OpenSSL not found: %OPENSSL_DIR%\openssl.exe
echo Please ensure OpenSSL is properly installed.
pause
exit /b 1
)
:: Check if main program exists
if not exist "%SCRIPT_DIR%\mtga_gui.py" (
echo Error: Main program not found: %SCRIPT_DIR%\mtga_gui.py
echo Please ensure program files are complete.
pause
exit /b 1
)
:: Set environment variables
set "PATH=%OPENSSL_DIR%;%PATH%"
set "PYTHONPATH=%SCRIPT_DIR%;%PYTHONPATH%"
echo ====================================
echo MTGA GUI Launcher
echo ====================================
echo Starting program, please wait...
:: Switch to script directory and run program using uv (auto-uses virtual environment)
cd /d "%SCRIPT_DIR%"
uv run python "%SCRIPT_DIR%\mtga_gui.py"
:: If program exits abnormally, pause to display error information
if %ERRORLEVEL% neq 0 (
echo.
echo Program exited abnormally, error code: %ERRORLEVEL%
pause
)
endlocal