Skip to content

V2.2.6

Choose a tag to compare

@SpacJoy SpacJoy released this 17 Aug 18:50
· 311 commits to main since this release

合并 2.2.4、2.2.5 变更统一发布(不包含 2.2.3,已单独发布)。

Full Changelog: V2.2.3...V2.2.6

构建与打包

  • 统一所有 PyInstaller 构建产物至 installer/ 目录:
    • EXE 输出:installer/dist/RC-*.exe
    • 工作目录:installer/build/
    • 安装包:installer/dist/installer/Remote-Controls-Installer-<version>.exe
  • installer/build_installer.bat 与 installer/build_installer.ps1 适配新的输出路径;根目录 build.bat 作为双击入口,内部切换到 installer/ 运行,避免路径问题。
  • 三个 .spec 文件集中到 installer/,以相对路径引用源码与资源。

版本信息与打包联动

  • 新增并统一版本信息文件 version_info.py,集中管理版本与应用元数据。
  • 新增 installer/update_version.py:
    • 根据输入版本自动生成/覆盖 version_info.py;
    • 生成简版 version.txt 供安装器读取;
    • 防御性处理:如仍存在硬编码 BANBEN="Vx.y.z",会同步为当前版本,避免显示不一致。
  • GUI.py、main.py、tray.py 通过 version_info.get_version_string() 显示版本(保留回退值以防缺文件时崩溃)。
  • installer/build_installer.bat 集成版本更新:构建前输入版本后,自动更新 version_info.py 与 Inno 宏 #define MyAppVersion,三款 EXE 与安装包版本一键对齐。

安装器(Inno Setup 6)

  • 脚本英文化与重建,路径与版本宏对齐:
    • OutputDir=dist\installer(相对 installer/)
    • 安装文件源自 dist\RC-*.exe(相对 installer/)
  • 计划任务创建/删除逻辑与 GUI 完全一致:
    • 主程序:系统启动触发(Boot),以 SYSTEM,RunLevel=Highest,ExecutionTimeLimit=PT0S。
    • 托盘:用户登录触发(Logon),当前用户,RunLevel=Highest。
  • 卸载:可选保留 config.json(默认保留),日志目录始终删除。
  • 任务默认勾选策略调整:
    • 各任务项 Flags 均设为 unchecked;
    • 在“选择附加任务”页面进入时通过 CurPageChanged 代码默认勾选全部,用户仍可取消;
    • 如需页面默认保持不勾选,可移除该代码块,即呈现“全部未选”。
  • 编译提示:以管理员模式安装同时写入 HKCU 时,Inno 会提示 UsedUserAreasWarning,为预期行为。

GUI

  • 计划任务名称切换为英文以匹配安装器:
    • 主任务:Remote Controls Main Service
    • 托盘任务:Remote Controls Tray
  • 修复设置开机自启动相关问题:
    • 移除错误的 Pascal 片段与不合法运算符;采用 Windows 友好的路径包裹方式;
    • 兼容清理旧版中文任务名(若存在);
    • 修复一处字符串未闭合问题。
  • 自定义主题:修复保存后“最后一项重复”的问题,生成配置前清理旧派生键,重建树视图确保索引正确。

托盘(Tray)

  • 版本菜单(仅 EXE 模式)显示“更新状态”:
    • 发现新版本 x.y.z / 已是最新 / 检查失败(GitHub Releases,短超时,失败不阻塞)。
    • 点击行为不变:打开项目主页。
  • 清理菜单文案:不再显示【脚本模式】/【EXE模式】前缀。

文档

  • 更新并同步构建产物路径与双击脚本使用说明。

其它

  • 无新增第三方依赖;更新检查基于标准库(urllib/json/re),网络不可用时提示“检查失败”。
  • 若开启测试模式可清空日志,便于排查。
cd4