Repository navigation
V2.2.6
合并 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
- 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代码默认勾选全部,用户仍可取消; - 如需页面默认保持不勾选,可移除该代码块,即呈现“全部未选”。
- 各任务项 Flags 均设为
- 编译提示:以管理员模式安装同时写入 HKCU 时,Inno 会提示 UsedUserAreasWarning,为预期行为。
GUI
- 计划任务名称切换为英文以匹配安装器:
- 主任务:
Remote Controls Main Service - 托盘任务:
Remote Controls Tray
- 主任务:
- 修复设置开机自启动相关问题:
- 移除错误的 Pascal 片段与不合法运算符;采用 Windows 友好的路径包裹方式;
- 兼容清理旧版中文任务名(若存在);
- 修复一处字符串未闭合问题。
- 自定义主题:修复保存后“最后一项重复”的问题,生成配置前清理旧派生键,重建树视图确保索引正确。
托盘(Tray)
- 版本菜单(仅 EXE 模式)显示“更新状态”:
- 发现新版本 x.y.z / 已是最新 / 检查失败(GitHub Releases,短超时,失败不阻塞)。
- 点击行为不变:打开项目主页。
- 清理菜单文案:不再显示【脚本模式】/【EXE模式】前缀。
文档
- 更新并同步构建产物路径与双击脚本使用说明。
其它
- 无新增第三方依赖;更新检查基于标准库(urllib/json/re),网络不可用时提示“检查失败”。
- 若开启测试模式可清空日志,便于排查。
