@echo off chcp 65001 > nul cls :: 檢查是否以管理員權限運行 net session >nul 2>&1 if %errorLevel% == 0 ( :: 如果是管理員權限,只創建虛擬環境後就降權運行 if not exist venv ( echo ℹ️ 正在創建虛擬環境... python -m venv venv ) :: 降權運行剩餘的步驟 echo ℹ️ 以普通用戶權限繼續... powershell -Command "Start-Process -FilePath '%comspec%' -ArgumentList '/c cd /d %cd% && %~f0 run' -Verb RunAs:NO" exit /b ) else ( :: 檢查是否是第二階段運行 if "%1"=="run" ( goto RUN_BUILD ) else ( :: 如果是普通權限且需要創建虛擬環境,請求管理員權限 if not exist venv ( echo ⚠️ 需要管理員權限來創建虛擬環境 echo ℹ️ 正在請求管理員權限... powershell -Command "Start-Process -Verb RunAs -FilePath '%comspec%' -ArgumentList '/c cd /d %cd% && %~f0'" exit /b ) else ( goto RUN_BUILD ) ) ) :RUN_BUILD echo ℹ️ 啟動虛擬環境... call venv\Scripts\activate.bat if errorlevel 1 ( echo ❌ 啟動虛擬環境失敗 pause exit /b 1 ) :: 檢查並安裝缺失的依賴 echo ℹ️ 檢查依賴... for /f "tokens=1" %%i in (requirements.txt) do ( pip show %%i >nul 2>&1 || ( echo ℹ️ 安裝 %%i... pip install %%i ) ) echo ℹ️ 開始構建... python build.py if errorlevel 1 ( echo ❌ 構建失敗 pause exit /b 1 ) echo ✅ 完成! pause