@echo off chcp 65001 > nul setlocal enabledelayedexpansion echo 正在启动视频处理系统服务器... REM 设置环境变量 set PYTHONIOENCODING=utf-8 set PYTHONLEGACYWINDOWSSTDIO=utf-8 REM 检查是否存在必要的文件 if not exist "%~dp0server.py" ( echo 错误: 未找到server.py文件! pause exit /b 1 ) if not exist "%~dp0pdfkit_patch.py" ( echo 警告: 未找到pdfkit_patch.py文件,将创建兼容层... copy NUL "%~dp0pdfkit_patch.py" > nul echo 已创建pdfkit_patch.py文件 ) if not exist "%~dp0whisper_patch.py" ( echo 警告: 未找到whisper_patch.py文件,将创建兼容层... copy NUL "%~dp0whisper_patch.py" > nul echo 已创建whisper_patch.py文件 ) REM 检查端口5001是否被占用 set PORT_FOUND=0 for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":5001"') do ( set PID=%%a set PORT_FOUND=1 goto :found ) :found if %PORT_FOUND% equ 1 ( echo 警告: 端口5001已被占用,进程ID为: %PID% choice /c YN /m "是否尝试终止该进程 (Y/N)?" if !errorlevel! equ 1 ( echo 正在终止进程 %PID%... taskkill /F /PID %PID% timeout /t 2 > nul ) else ( echo 请关闭占用端口的程序后再重试。 pause exit /b 1 ) ) REM 启动服务器 echo 正在启动服务器... cd /d "%~dp0" start python server.py REM 等待服务器启动 echo 正在等待服务器启动... timeout /t 5 /nobreak > nul REM 自动打开浏览器 start http://localhost:5001 echo. echo 如果浏览器没有自动打开,请访问: http://localhost:5001 echo 要停止服务器,请关闭命令行窗口。 pause