completed 65%~

博客提到进行了一些测试,并添加了Music。虽表述简短,但关键信息围绕测试和添加Music展开,与信息技术领域的测试工作相关。

有点小晚了 肯定是睡着了

做了写测试 加了Music

在这个脚本基础上优化 @echo off setlocal enabledelayedexpansion :: ---------------------------- :: 基础配置(可修改区域) :: ---------------------------- set "UV=F:\Software\keil5\core\UV4\UV4.exe" set "project_root=%~dp0Multi_project" :: 工程根目录 :: ---------------------------- :: 命令行参数处理 :: ---------------------------- if not "%~1"=="" ( set "TARGET_PROJECT=%~1" call :validate_project call :compile exit /b %errorlevel% ) :: ---------------------------- :: 自动检测所有子工程 :: ---------------------------- echo Scanning projects in: %project_root% set "project_count=0" for /d %%a in ("%project_root%\*") do ( set /a "project_count+=1" set "project_name=%%~nxa" set "project_list=!project_list! !project_name!" ) echo Found %project_count% project(s) :: ---------------------------- :: 主编译流程 :: ---------------------------- for %%a in (%project_list%) do ( set "TARGET_PROJECT=%%a" call :compile if errorlevel 1 ( echo [ERROR] Build failed for: %%a exit /b 1 ) ) exit /b 0 :: ---------------------------- :: 子程序:工程验证 :: ---------------------------- :validate_project if not exist "%project_root%\%TARGET_PROJECT%" ( echo [ERROR] Project not exist: %TARGET_PROJECT% exit /b 2 ) if not exist "%project_root%\%TARGET_PROJECT%\%TARGET_PROJECT%_MCU.uvmpw" ( echo [ERROR] Project file missing: %TARGET_PROJECT%_MCU.uvmpw exit /b 3 ) exit /b 0 :: ---------------------------- :: 子程序:编译流程 :: ---------------------------- :compile echo. echo [INFO] Building project: %TARGET_PROJECT% :: 路径配置(自动生成带时间戳的日志文件) set "build_log=%~dp0logs\%TARGET_PROJECT%_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%.log" set "uvproj_path=%project_root%\%TARGET_PROJECT%\%TARGET_PROJECT%_MCU.uvmpw" :: 清理并创建日志目录 if not exist "%~dp0logs\" md "%~dp0logs" break > "%build_log%" :: 执行编译命令 echo Project file: %uvproj_path% "%UV%" -j0 -r "%uvproj_path%" -o "%build_log%" :: ---------------------------- :: 错误检查 :: ---------------------------- if not exist "%build_log%" ( echo [ERROR] Log file missing: %build_log% exit /b 4 ) type "%build_log%" | findstr /i /r "\<Error\>" "\<error(s)\>" "\<错误\>" if %errorlevel% equ 0 ( echo [ERROR] Compilation failed: %TARGET_PROJECT% exit /b 1 ) echo [SUCCESS] Build completed: %TARGET_PROJECT% exit /b 0
03-11
@echo off REM ############################################### REM # Enhanced NC65 Server Stop Script REM # Features: REM # 1. Original NC65 stop functionality REM # 2. JAVA process termination on port 32650 REM # 3. Detailed execution feedback REM # 4. 30-second timeout before auto-close REM ############################################### :: Environment Configuration if "%OS%"=="Windows_NT" setlocal set NC_HOME=%~dp0 echo [STATUS] NC_HOME configured: %NC_HOME% if not exist "%NC_HOME%" ( echo [ERROR] NC_HOME path invalid! goto FAILURE ) set JAVA_HOME=D:\yonyou\sp\nc65sp\ufjdk echo [STATUS] JAVA_HOME configured: %JAVA_HOME% if not exist "%JAVA_HOME%\bin\java.exe" ( echo [ERROR] Java executable not found! goto FAILURE ) :: Parameter Handling if not "%1%" == "" ( call %NC_HOME%\bin\uapSetupCmdLine.bat %1% if errorlevel 1 ( echo [ERROR] uapSetupCmdLine.bat %1% failed! goto FAILURE ) echo [SUCCESS] uapSetupCmdLine.bat %1% executed goto START ) call %NC_HOME%\bin\uapSetupCmdLine.bat if errorlevel 1 ( echo [ERROR] uapSetupCmdLine.bat failed! goto FAILURE ) echo [SUCCESS] uapSetupCmdLine.bat executed :: Main Stop Procedure %JAVA_HOME%\bin\java -classpath %NC_CLASSPATH% -Dnc.bs.logging.format=text -Dnc.server.location=%NC_HOME% nc.bs.mw.start.NCStarter stop if errorlevel 1 ( echo [WARNING] NCStarter stop returned non-zero code ) else ( echo [SUCCESS] NCStarter stop executed ) :: Port 32650 Process Termination echo [STATUS] Checking for processes on port 32650... set PORT_PID= for /f "tokens=2" %%a in ('netstat -ano ^| findstr ":32650" ^| find "LISTENING"') do set PORT_PID=%%a if defined PORT_PID ( taskkill /F /PID %PORT_PID% /T if errorlevel 1 ( echo [ERROR] Failed to terminate PID %PORT_PID% ) else ( echo [SUCCESS] Terminated PID %PORT_PID% using port 32650 ) ) else ( echo [INFO] No active process found on port 32650 ) :SUCCESS echo ============================================ echo [COMPLETED] All operations finished echo Window will automatically close in 30 seconds... timeout /t 30 >nul exit /b 0 :FAILURE echo ============================================ echo [ABORTED] Script execution failed echo Window will automatically close in 30 seconds... timeout /t 30 >nul exit /b 1 这是 NC65的stop.bat文件代码,现在没有实现关闭所有使用32650端口的java.exe程序,修改这个文件,可以实现完全关闭,完整输出文件代码
10-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值