Skip to content

Releases: SpacJoy/Remote-Controls

Remote Controls V3.2.0

07 Feb 17:37

Choose a tag to compare

🚀 自动构建发布 - 2026-02-07 17:37 UTC

🔄 更新内容

配置系统重构、版本号显示优化、国际化增强与 CI/CD 流程优化
Full Changelog (相对于 3.1.0): V3.0.2...V3.2.0

🏷️ 版本号系统升级

  • 支持测试后缀:版本号处理逻辑现在原生支持 -test 后缀(如 3.2.0-test, 3.2.0-test2 等)。
  • CI/CD 版本自动化
    • dev 分支推送的构建产物现在会自动带上 -test 后缀。
    • 支持从标签或工作流输入中直接提取并保留带后缀的版本号。
  • 解析逻辑优化:改进了 update_version.py 的解析算法,确保在保留字符串后缀的同时,数字版本元组(Major.Minor.Patch.Build)依然能被正确解析。
  • GUI 显示适配:版本号显示正则现在兼容带字母和中划线的后缀。

🌍 国际化与多语言 (i18n)

  • 动态语言加载:语言系统由硬编码改为动态加载 res/languages/ 下的 JSON 文件,支持更方便地扩展新语言。
  • 改进语言检测:优化了系统语言检测逻辑,支持 zh-CNzh-TWen-US 等标准代码。
  • 语言模板:新增 template.json 模板文件,方便社区贡献翻译。
  • 安装包集成:更新 Inno Setup 脚本,确保安装包包含所有多语言资源文件。
  • 翻译补充:更新英文翻译文件,增加了 CA 证书校验相关的多语言文本。

⚙️ 配置系统重构 (TOML-First)

  • TOML 成为首选格式:全面转向 config.toml 作为主要配置文件,提供更好的可读性与层级管理。
  • 成熟解析器集成:C 核心(主程序与托盘)集成生产级 tomlc99 解析器,替换原有的简易实现,支持完整的 TOML 规范。
  • 停止生成旧版 JSON:GUI 不再主动生成 config.json,配置完全由 config.toml 接管,保持配置系统的纯净。
  • 平滑迁移与备份:主程序采用“TOML 优先,JSON 兜底”的加载策略;GUI 支持将旧版 config.json 自动迁移并备份为 .bak
  • 加载日志增强:显著增强了主程序启动时的配置加载日志,方便排查路径、格式及读取错误。

💄 GUI 配置与交互体验优化

  • 窗口自适应宽度:实现了切换语言时所有窗口(主窗口、亮度设置、自定义主题等)自动调整宽度的功能,解决文字显示不全问题。
  • 亮度设置深度适配:为“亮度调节设置”窗口增加了语言观察者,支持下拉框选项和列表框内容的实时国际化切换。
  • 启动自动提权:程序启动时会自动尝试通过 UAC 请求管理员权限;若用户拒绝,则静默退回到普通权限模式运行,兼顾功能完整性与用户选择。
  • 窗口定位优化:切换语言时仅调整窗口尺寸,不再强制将窗口重新居中,保持用户操作时的视觉连续性。
  • 修复语言设置丢失:修复了在 GUI 中切换语言后无法持久化保存到配置文件的问题。
  • 语言选择器增强:语言选择下拉列表现在会根据 res/languages/ 目录下的文件自动填充。
  • 智能动态注释:在 config.toml 中为自定义主题自动添加详细的中文注释。
  • 注释冗余优化:仅在每类主题(应用、服务、命令等)的首个项目添加注释,保持配置文件清爽。
  • 文件关联优化:当通过托盘打开配置时,优先尝试使用记事本打开 config.toml,确保编辑体验一致。
  • 环境兼容性提升:优化了 TOML 库的导入逻辑,确保在 Python 3.11 以下版本也能通过 tomli 正常运行。

🧰 CI/CD 自动化与构建

  • 标签重命名机制:修复了 dev 分支推送正式标签导致主分支被误打标签的问题。现在 dev 分支的正式标签会自动重命名为带 -test 后缀的测试标签。
  • 自动冲突处理:支持 -testN 自动递增后缀,通过 git ls-remote 实时检查远程标签冲突。
  • 构建任务去重:优化工作流触发逻辑,避免在推送标签时触发重复的分支构建任务,节省计算资源。
  • 修复 GitHub 打包缺失依赖:解决了发布版本中缺失 tomli_w 导致 GUI 无法启动的问题。
  • 构建脚本适配:更新 build_main.ps1build_tray.ps1,自动化处理 tomlc99 库的编译与链接。
  • 单实例逻辑微调:优化了主程序的互斥体检查流程,确保配置加载过程中的稳定性。

📚 相关链接

Remote Controls V3.1.0

03 Feb 17:46

Choose a tag to compare

🚀 自动构建发布 - 2026-02-03 17:46 UTC

🔄 更新内容

全新的亮度调节系统、更完善的 GUI 交互与 CI/CD 自动化递增
Full Changelog (相对于 3.0.2): V3.0.2...V3.1.0

✨ 屏幕亮度调节系统深度重构

  • 多控制模式支持:新增 WMI (系统接口)、Dxva2 (DDC/CI) 和 Twinkle Tray (第三方) 三种控制模式,适配更多显示器。
  • 自定义调节顺序:支持在高级设置界面通过列表自定义不同控制方法的优先级。
  • 执行策略可选:支持“同时执行 (All)”或“成功即止 (Fallback)”两种控制策略。
  • 精细化目标控制:支持对 WMI 和 Dxva2 进行单显示器索引控制(如仅调节显示器 0 或 1)。
  • 亮度测试功能:新增测试按钮,支持即时验证对应控制方法是否生效。

💄 GUI 布局与交互优化

  • 高级设置子窗口:将繁琐的亮度配置移至独立窗口,仅保留“打开亮度调节设置”按钮,界面更清爽。
  • 智能控件联动
    • Twinkle Tray 模式选择“全部显示器”时自动禁用多余输入框。
    • WMI / Dxva2 增加“所有 (All)”快捷填入按钮。
    • 增加“取消”按钮以防止误操作保存(方便还原修改)。
  • 全界面英文适配:对亮度调节子窗口的所有文案、弹窗及提示进行了完整的国际化处理。
  • 窗口居中:所有弹出窗口(包括亮度设置)均支持相对于父窗口居中显示。

🤖 CI/CD 自动化与构建

  • 版本号自动递增:GitHub Actions 在 dev 分支提交时支持自动根据最新 Release 递增版本号(如 1.0.0 -> 1.0.0.1)。
  • 构建链路增强
    • 优化了对 Inno Setup 和 Python 环境的检测脚本。
    • 新增开发环境一键部署脚本 (setup_C_dev.ps1setup_python_env.ps1)。
  • 依赖管理:更新 Python 关键依赖验证逻辑,确保构建环境稳定性。

🛠 修复与改进

  • 配置兼容性:完美兼容旧版本配置文件,支持旧版亮度模式自动迁移。
  • 代码重构:优化亮度控制的 PowerShell 调用逻辑,提升 Dxva2 DDC/CI 控制的稳定性。
  • 规范化:更新 LICENSE,重构 .gitignore,并清理了 README 中的过时章节。

📚 相关链接

Remote Controls V3.0.3-test

03 Feb 17:01

Choose a tag to compare

Pre-release

🚀 自动构建发布 - 2026-02-03 17:01 UTC

🔄 更新内容

  • feat(gui): 添加亮度测试按钮与测试逻辑 (6cb34d2)
  • feat(gui): 改进亮度高级设置界面 (782a4f0)
  • feat(brightness): 支持 target 索引与自定义策略 (c4d8fb0)
  • ci(workflows): 将 Actions 引用由 SHA 改为版本标签 (d55935e)
  • feat(brightness): 增加 Dxva2/WMI 亮度支持并改进 PowerShell 调用 (3d8c43b)
  • docs: 更新 README 并调整 setup_C_dev 文案 (f19441c)
  • feat: 添加 Python 环境脚本并增强构建工具检测 (b1f90a8)
  • fix: 将默认跳过选项设为N以避免误操作 (ca68bf3)
  • feat(installer): 增强 Inno Setup 检测并添加开发环境部署脚本 (becd7cb)
  • chore: 重构 .gitignore 文件以改善组织结构和清晰度 (de354e6)
  • ci: 移除 main 分支的自动构建触发 (b6b7644)
  • ci: 更新 GitHub Actions 配置并添加超时限制 (137210f)
  • ci: 优化工作流触发规则与发布条件 (743cc17)
  • docs: 从README中移除快速开始章节 (80e1843)
  • Update LICENSE file (d9a69ac)
  • 更新 V3.0.2 版本发布日期 (675b7b8)
  • 完善亮度控制策略与界面文案国际化 (27e03b8)
  • 支持多种亮度控制优先级与界面国际化优化 (63245a8)
  • 新增 commentTranslate 悬停翻译功能配置 (6c42873)
  • 新增 VSCode 工作区设置文件 (ae63f19)
  • ci(vscode): 将任务类型从cppbuild更改为process以兼容新版本 (dd7e1cb)

📚 相关链接

Remote Controls V3.0.2

27 Dec 08:17

Choose a tag to compare

🚀 自动构建发布 - 2025-12-27 08:17 UTC

🔄 更新内容

图标更新、亮度优先策略增强、Twinkle Tray 适配优化与构建链路增强
Full Changelog (相对于 3.0.1): V3.0.1...V3.0.2

🎨 图标与通知

  • 更新应用图标资源(icon.ico),统一托盘/主程序/安装包的视觉识别,并解决深色背景下看不清(看不见)图标的问题。
  • 安装包图标引用调整为 icon.ico,避免与旧图标混用。
  • 优化主程序通知/Toast 图标加载顺序:优先使用磁盘 res\icon.ico(便于用户替换),失败再回退到内嵌资源。

🖥 GUI / Twinkle Tray

  • 更新 Twinkle Tray 下载链接,改为直达 Twinkle Tray 官方网站,解决部分环境下无法访问微软应用商店的问题。
  • 优化 Twinkle Tray 默认路径检测,新增对常见安装位置 %LocalAppData%\Programs\twinkle-tray\Twinkle Tray.exe 的自动识别支持。
  • 修复禁用逻辑:切换到“系统接口(WMI)”后立即禁用 Twinkle Tray 相关输入(无需再次点击)。
  • 缩短路径输入框宽度,避免因新增按钮导致窗口被撑宽。
  • “浏览/下载”按钮与模式联动:与其它控件一起同步禁用/启用。
  • 收紧“浏览/下载”按钮间距:使用内嵌容器并排布局,视觉更紧凑。
  • 内置主题「屏幕亮度」新增多种控制策略,适配更多显示器与使用习惯:
    • WMI (仅系统接口):仅使用系统 WMI 接口。
    • Twinkle Tray (仅命令行):仅调用 Twinkle Tray 命令行,不回退到 WMI。
    • WMI 优先:先尝试 WMI,失败则回退到 Twinkle Tray。
    • Twinkle Tray 优先:先尝试 Twinkle Tray,失败则回退到 WMI。
    • 同时控制:依次执行 WMI 与 Twinkle Tray(无论 WMI 是否成功都会继续执行)。

📝 说明文案与细节信息

  • 优化「详细信息」窗口的内置主题/自定义主题/提示说明文案,术语更统一,中英文表达更准确。
  • 提示说明更新:
    • 日志收集建议由 logs/RC.log 调整为 logs/*.log,便于排查多模块日志。
    • 配置变更提示调整:GUI 保存后需重启主程序以重新加载配置。

🧰 构建与发布

  • GitHub Actions 发布流程支持多测试版标签:V3.0.2-test1V3.0.2-test2 等,自动创建预发布(Pre-release)。
  • 预发布的更新日志仍复用正式版 V3.0.2CHANGELOG.md 中的段落,保证说明一致性。
  • 手动触发工作流的版本输入说明已更新,支持 3.0.2-test1 等格式。
  • 完善版本号解析与错误提示:支持 X.Y.Z / X.Y.Z.B,并允许追加 -test / -testN(同时兼容带/不带 V 前缀输入)。
  • 更新日志生成增强:补充 Full Changelog 链接生成逻辑,并在测试标签发布时将 compare 链接指向完整测试标签(如 ...V3.0.2-test2)。
  • 修正 CI/工作流配置中的细节问题(如版本输入描述缩进)。

📚 相关链接

Remote Controls V3.0.2-test3

20 Dec 09:48

Choose a tag to compare

Pre-release

🚀 自动构建发布 - 2025-12-20 09:48 UTC

🔄 更新内容

图标更新、Twinkle Tray 适配优化与构建链路增强
Full Changelog (相对于 3.0.1): V3.0.1...V3.0.2-test3

🎨 图标与通知

  • 更新应用图标资源(icon.ico),统一托盘/主程序/安装包的视觉识别,并解决深色背景下看不清(看不见)图标的问题。
  • 安装包图标引用调整为 icon.ico,避免与旧图标混用。
  • 优化主程序通知/Toast 图标加载顺序:优先使用磁盘 res\icon.ico(便于用户替换),失败再回退到内嵌资源。

🖥 GUI / Twinkle Tray

  • 更新 Twinkle Tray 下载链接,改为直达 Twinkle Tray 官方网站,解决部分环境下无法访问微软应用商店的问题。
  • 优化 Twinkle Tray 默认路径检测,新增对常见安装位置 %LocalAppData%\Programs\twinkle-tray\Twinkle Tray.exe 的自动识别支持。
  • 修复禁用逻辑:切换到“系统接口(WMI)”后立即禁用 Twinkle Tray 相关输入(无需再次点击)。
  • 缩短路径输入框宽度,避免因新增按钮导致窗口被撑宽。
  • “浏览/下载”按钮与模式联动:与其它控件一起同步禁用/启用。
  • 收紧“浏览/下载”按钮间距:使用内嵌容器并排布局,视觉更紧凑。

🧰 构建与发布

  • GitHub Actions 发布流程支持多测试版标签:V3.0.2-test1V3.0.2-test2 等,自动创建预发布(Pre-release)。
  • 预发布的更新日志仍复用正式版 V3.0.2CHANGELOG.md 中的段落,保证说明一致性。
  • 手动触发工作流的版本输入说明已更新,支持 3.0.2-test1 等格式。
  • 完善版本号解析与错误提示:支持 X.Y.Z / X.Y.Z.B,并允许追加 -test / -testN(同时兼容带/不带 V 前缀输入)。
  • 更新日志生成增强:补充 Full Changelog 链接生成逻辑,并在测试标签发布时将 compare 链接指向完整测试标签(如 ...V3.0.2-test2)。
  • 修正 CI/工作流配置中的细节问题(如版本输入描述缩进)。

📚 相关链接

Remote Controls V3.0.2-test2

18 Dec 17:56

Choose a tag to compare

Pre-release

🚀 自动构建发布 - 2025-12-18 17:56 UTC

🔄 更新内容

图标更新与通知显示一致性优化
Full Changelog (相对于 3.0.1): V3.0.1...V3.0.2-test2

🎨 图标与通知

  • 更新应用图标资源(icon.ico),统一托盘/主程序/安装包的视觉识别,并解决深色背景下看不清(看不见)图标的问题。
  • 安装包图标引用调整为 icon.ico,避免与旧图标混用。
  • 优化主程序通知/Toast 图标加载顺序:优先使用磁盘 res\icon.ico(便于用户替换),失败再回退到内嵌资源。

🖥 GUI / Twinkle Tray

  • 设置项新增“下载”按钮,直达微软应用商店(Twinkle Tray):https://apps.microsoft.com/detail/9pljwwsv01lk?hl=zh-cn&gl=CN
  • 当路径为空时,输入框默认显示 Twinkle Tray,便于采用自动解析(常见安装位置 / PATH 别名)。
  • 修复禁用逻辑:切换到“系统接口(WMI)”后立即禁用 Twinkle Tray 相关输入(无需再次点击)。
  • 缩短路径输入框宽度,避免因新增按钮导致窗口被撑宽。
  • “浏览/下载”按钮与模式联动:与其它控件一起同步禁用/启用。
  • 收紧“浏览/下载”按钮间距:使用内嵌容器并排布局,视觉更紧凑。

🧰 构建与发布

  • GitHub Actions 发布流程支持多测试版标签:V3.0.2-test1V3.0.2-test2 等,自动创建预发布(Pre-release)。
  • 预发布的更新日志仍复用正式版 V3.0.2CHANGELOG.md 中的段落,保证说明一致性。
  • 手动触发工作流的版本输入说明已更新,支持 3.0.2-test1 等格式。
  • 完善版本号解析与错误提示:支持 X.Y.Z / X.Y.Z.B,并允许追加 -test / -testN(同时兼容带/不带 V 前缀输入)。
  • 更新日志生成增强:补充 Full Changelog 链接生成逻辑,并在测试标签发布时将 compare 链接指向完整测试标签(如 ...V3.0.2-test2)。
  • 修正 CI/工作流配置中的细节问题(如版本输入描述缩进)。

📚 相关链接

Remote Controls V3.0.2-test1

18 Dec 17:08

Choose a tag to compare

Pre-release

🚀 自动构建发布 - 2025-12-18 17:08 UTC

🔄 更新内容

图标更新与通知显示一致性优化
Full Changelog (相对于 3.0.1): V3.0.1...V3.0.2

🎨 图标与通知

  • 更新应用图标资源(icon.ico),统一托盘/主程序/安装包的视觉识别,并解决深色背景下看不清(看不见)图标的问题。
  • 安装包图标引用调整为 icon.ico,避免与旧图标混用。
  • 优化主程序通知/Toast 图标加载顺序:优先使用磁盘 res\icon.ico(便于用户替换),失败再回退到内嵌资源。

🖥 GUI / Twinkle Tray

  • 设置项新增“下载”按钮,直达微软应用商店(Twinkle Tray):https://apps.microsoft.com/detail/9pljwwsv01lk?hl=zh-cn&gl=CN
  • 当路径为空时,输入框默认显示 Twinkle Tray,便于采用自动解析(常见安装位置 / PATH 别名)。
  • 修复禁用逻辑:切换到“系统接口(WMI)”后立即禁用 Twinkle Tray 相关输入(无需再次点击)。
  • 缩短路径输入框宽度,避免因新增按钮导致窗口被撑宽。
  • “浏览/下载”按钮与模式联动:与其它控件一起同步禁用/启用。
  • 收紧“浏览/下载”按钮间距:使用内嵌容器并排布局,视觉更紧凑。

🧰 构建与发布

  • GitHub Actions 发布流程支持多测试版标签:V3.0.2-test1V3.0.2-test2 等,自动创建预发布(Pre-release)。
  • 预发布的更新日志仍复用正式版 V3.0.2CHANGELOG.md 中的段落,保证说明一致性。
  • 手动触发工作流的版本输入说明已更新,支持 3.0.2-test1 等格式。

📚 相关链接

Remote Controls V3.0.1

15 Dec 11:33

Choose a tag to compare

🚀 自动构建发布 - 2025-12-15 11:33 UTC

🔄 更新内容

MQTT TLS 增强、构建链路更稳、GUI 体验优化
Full Changelog (相对于 3.0.0): V3.0.0...V3.0.1

🔐 MQTT / TLS

  • 支持 MQTT ssl:// TLS 连接配置(与原有 broker/port 配置方式兼容)。
  • 新增 TLS 证书校验开关与 CA 文件路径配置:mqtt_tls_verify / mqtt_tls_ca_file
  • MQTT 实现收敛:移除内置 MQTT 客户端逻辑,主程序统一使用 Eclipse Paho MQTT C(减少实现分叉与行为不一致)。

🖥 GUI

  • MQTT TLS 相关控件联动:未启用 TLS 或未启用证书校验时,自动禁用 CA 路径输入,避免“填了但不生效”的误配置。

🧰 构建与 CI

  • GitHub Actions(Release):MSYS2 安装 Paho MQTT C(包名为 paho.mqtt.c),并设置 PAHO_MQTT_C_ROOT
  • GitHub Actions(Release):使用 msys2-location 输出动态拼接 PATH / PAHO_MQTT_C_ROOT,兼容 MSYS2 安装在 D:\a\_temp\...\msys64 等非固定路径的场景(修复 MQTTClient.h 找不到导致的构建失败)。
  • 本地构建:build_main.ps1 支持自动探测 MSYS2 常见前缀(mingw64 / ucrt64),降低对环境变量的强依赖。

📖 文档与示例

  • 补充配置字段与 MQTT TLS 连接说明(README 与相关文档同步更新)。
  • 更新示例配置(dome_config.json)以覆盖 TLS 相关键。

📚 相关链接

Remote Controls V3.0.0

15 Dec 08:47

Choose a tag to compare

🚀 自动构建发布 - 2025-12-15 08:47 UTC

🔄 更新内容

C 版主程序/托盘重构、全面多语言与安全增强
Full Changelog (相对于 2.4.0): V2.4.0...V3.0.0

🚀 重大变更(Breaking Changes)

  • 主程序与托盘升级为 C 版实现RC-main.exe / RC-tray.exe),Python 端保留 GUI(RC-GUI.exe)。
  • 本地构建链路调整:构建 C 版主程序/托盘需 MSYS2 + MinGW64(CI/Actions 同步更新)。

🌍 国际化(中英文)

  • 主程序、托盘、MQTT 模块与 GUI 支持中英文界面与日志输出。
  • 根据系统语言自动切换英文提示;开机自启等关键交互文案同步国际化。
  • 完善中英文映射词条,覆盖内置主题与自定义主题窗口。

🔔 通知与托盘体验

  • 统一通知气泡实现,通知链路更稳定;支持自定义显示名称。
  • 主程序支持内嵌图标,并可将关键日志转发为托盘通知。
  • 优化通知图标加载与窗口兼容性
  • 优化托盘图标注册流程,提升 Explorer 重启等场景下的兼容性。

🛡 安全与稳定性

  • 提升命令行参数安全性与健壮性;加强 payload 校验与日志输出安全。
  • 增强 MQTT 日志与托盘字符串安全性;计划任务与命令执行路径更稳健。
  • 适配 Python 3.15+ 与 Tcl 9 弃用 API,提前规避上游变更风险。

🧰 构建与发布

  • 优化安装包构建流程与依赖打包;新增/完善 CI 自检工作流。
  • 支持 -test 标签自动发布为预发布版本(Pre-release)。
  • 文档与脚本统一版本号与仓库信息;移除 Nuitka 支持并精简构建链路。
  • 修复 C 版构建在 PowerShell + gcc 下的版本宏传参转义问题(RC_MAIN_VERSION / RC_TRAY_VERSION),避免编译失败。
  • 修复本地 PyInstaller 在 installer/build 目录生成 spec 后资源相对路径错误导致图标丢失的问题(icon_GUI.ico / top.ico)。
  • 顶层构建脚本支持透传 -NoPause,方便 CI/无人值守打包。
  • CI 构建失败时完善日志收集与输出策略,避免“完整日志重复打印”(可通过 RC_CI_INLINE_LOG=1 控制脚本内联输出)。

🎛 自定义主题与参数范围

  • 命令类型支持自定义参数范围(commandN_value_min/value_max)并完善 GUI 交互。
  • 优化参数范围标签文本与输入框布局;完善刷新提示的多语言与异常处理。

📚 相关链接

Remote Controls V3.0.2-test

15 Dec 19:51

Choose a tag to compare

Pre-release

🚀 自动构建发布 - 2025-12-15 19:51 UTC

🔄 更新内容

图标更新与通知显示一致性优化
Full Changelog (相对于 3.0.1): V3.0.1...V3.0.2

🎨 图标与通知

  • 更新应用图标资源(icon.ico),统一托盘/主程序/安装包的视觉识别,并解决深色背景下看不清(看不见)图标的问题。
  • 安装包图标引用调整为 icon.ico,避免与旧图标混用。
  • 优化主程序通知/Toast 图标加载顺序:优先使用磁盘 res\icon.ico(便于用户替换),失败再回退到内嵌资源。

📚 相关链接