3 Commits

Author SHA1 Message Date
e1333ccb78 v1.1.2 修复:启动脚本使用 ANSI (GBK) 编码
修复问题:
- Windows CMD 默认使用 ANSI 编码(GBK)
- UTF-8 编码的 bat 文件在中文 Windows 上会显示乱码

修改内容:
- 启动监控.bat 转换为 GBK 编码
- 使用 chcp 936 设置代码页为简体中文
2026-03-20 18:04:32 +08:00
e3b36d958d v1.1.1 修复:UnboundLocalError logger 作用域问题
修复问题:
- main() 函数内 logger = setup_logging() 导致作用域错误
- 改用 _apply_log_config() 函数更新日志等级,不重新赋值 logger
2026-03-20 17:50:43 +08:00
3b6a5fe2a0 v1.1.0 修复:转换启动脚本为 Windows CRLF 换行符 2026-03-20 17:18:53 +08:00
2 changed files with 49 additions and 33 deletions

View File

@@ -1,29 +1,29 @@
@echo off @echo off
title 远程连接音量自动调节器 -By:LeeQwQ title 远程连接音量自动调节器 -By:LeeQwQ
mode con cols=65 lines=18 mode con cols=65 lines=18
color 0B color 0B
chcp 65001 >nul chcp 936 >nul
cls cls
echo ======================================== echo ========================================
echo 远程连接音量自动调节器 echo 远程连接音量自动调节器
echo Remote Volume Monitor echo Remote Volume Monitor
echo ======================================== echo ========================================
echo. echo.
REM 检查 Python REM 检查 Python
python --version >nul 2>&1 python --version >nul 2>&1
if errorlevel 1 ( if errorlevel 1 (
echo [错误] 未找到 Python请先安装 Python 3.8+ echo [错误] 未找到 Python请先安装 Python 3.8+
pause pause
exit /b 1 exit /b 1
) )
echo. echo.
echo [启动] 开始监控远程连接... echo [启动] 开始监控远程连接...
echo [提示] 按 Ctrl+C 停止监控 echo [提示] 按 Ctrl+C 停止监控
echo. echo.
REM 启动监控程序(从 scripts 目录调用 src 和 config REM 启动监控程序(从 scripts 目录调用 src 和 config
python "%~dp0..\src\remote_volume_monitor.py" --config "%~dp0..\config\config.ini" python "%~dp0..\src\remote_volume_monitor.py" --config "%~dp0..\config\config.ini"
pause pause

View File

@@ -51,6 +51,22 @@ def setup_logging(config_path=None):
) )
return logging.getLogger(__name__) return logging.getLogger(__name__)
def _apply_log_config(config_path):
"""根据配置文件更新日志等级(不重新创建 logger"""
if not Path(config_path).exists():
return
try:
config = configparser.ConfigParser()
config.read(config_path, encoding='utf-8')
if 'logging' in config and 'level' in config['logging']:
level_str = config['logging']['level'].upper()
log_level = getattr(logging, level_str, logging.INFO)
logger.setLevel(log_level)
logger.info(f"📝 日志等级:{level_str}")
except Exception as e:
pass # 读取失败保持当前等级
logger = setup_logging() logger = setup_logging()
@@ -561,16 +577,16 @@ def main():
sys.exit(1) sys.exit(1)
config.read(config_path, encoding='utf-8') config.read(config_path, encoding='utf-8')
logger.info(f"✓ 已加载:{config_path}") logger.info(f"✓ 已加载:{config_path}")
# 重新初始化日志(使用配置文件中的日志等级) # 重新配置日志等级(使用配置文件中的日志等级)
logger = setup_logging(str(config_path)) _apply_log_config(str(config_path))
else: else:
default_config = Path(__file__).parent.parent / 'config' / 'config.ini' default_config = Path(__file__).parent.parent / 'config' / 'config.ini'
if default_config.exists(): if default_config.exists():
config.read(default_config, encoding='utf-8') config.read(default_config, encoding='utf-8')
logger.info(f"✓ 已加载默认:{default_config}") logger.info(f"✓ 已加载默认:{default_config}")
config_path = str(default_config) config_path = str(default_config)
# 重新初始化日志(使用配置文件中的日志等级) # 重新配置日志等级(使用配置文件中的日志等级)
logger = setup_logging(config_path) _apply_log_config(config_path)
else: else:
config['volume'] = {'remote_volume': str(args.volume)} config['volume'] = {'remote_volume': str(args.volume)}