Skip to content

Releases: MaxLHy0424/SCLTK

v6.1.1

24 Feb 16:05
Compare
Choose a tag to compare

软件本体

  • 重构选项存储.
  • 重构窗口属性设置.
  • 优化选项配置 UI 交互体验.
  • 优化 Console UI 性能.
  • 优化 "工具箱" 命令执行体验.
  • 优化 "工具箱" 命令执行性能.
  • 优化配置文件写入性能.
  • 优化选项值获取/更改性能开销.
  • 修复部分拼写错误.
  • 修复 "工具箱 / 命令提示符" 缓冲区大小错误.
  • 修改部分提示信息.
  • 移除配置文件同步时间注释.
  • 移除存在设计问题的库.
  • Console UI 添加 node_index.
  • 添加协程库.
  • 常规的技术性更改和修复.

其他

  • 下调编译优化为 O3.

v6.1.0

17 Feb 16:25
Compare
Choose a tag to compare

Note

从本版本起, 原 CRCSN (Computer Room Control Software Nemesis) 正式改名为 SCLTK (Student Computer Lab Toolkit).

Warning

本次更新中大量选项名称 (包括显示名称和 ID 名称) 已修改, 更新前务必备份 config.ini 后重新配置.

软件本体

  • 将选项分类 "试验性内容" 改名为 "杂项".
  • 将选项 "置顶显示" 改名为 "置顶窗口".
  • 将选项 "修复操作系统环境" 移至 "杂项".
  • 添加选项 "快速退出和重启" 至 "杂项".
  • 重构配置操作与破解/恢复操作.
  • 重构控制台清屏和大小调整为 Windows API.
  • 重构 "置顶窗口".
  • 添加新 API 至 cpp_utils.
  • 添加 "修复系统文件" 至 "工具箱".
  • 优化 "修复操作系统环境" 性能.
  • 优化窗口属性设置性能.
  • 优化多线程管理.
  • 优化 Console UI.
  • 优化等待 UI.
  • 优化 URL 高亮显示.
  • 优化日志输出.
  • 优化函数模板匹配.
  • 修复部分情况下编译错误.
  • 修复按 Ctrl + C 将强制退出软件.
  • 移除多余头文件.
  • 移除 "修复操作系统环境" 中部分规则.
  • 更换图标.
  • 其他的改进和修复.

其他

  • 优化构建系统.
  • 添加 "二次开发" 文档章节.
  • 修复文档链接错误.

v6.0.0

29 Jan 08:00
Compare
Choose a tag to compare

首先, 感谢大家一直以来对 CRCSN 的支持! 在此, 祝大家 2025 年新春快乐! 🎉

距离 CRCSN 在 2023 年发布第一个版本以来, 已经经过了一年时光. 谨以此次更新纪念这过去的 2024 年, 过往的我们, 过去我们的点点滴滴...

2024 年的时光一去不复返, 我们回首过去, 展望未来. 我们尚不知 2025 年的风风雨雨, 我们能做的, 唯有大步向前...

以下为本次更新的内容.

软件本体

  • 转至 Modern C++ 开发规范 (C++ 26 / GNU++ 26).
  • 移除启动脚本.
  • 添加配置文件支持.
  • 添加若干配置选项, 细分配置选项.
  • 添加自定义规则.
  • 添加 "工具箱".
  • 添加 "红蜘蛛多媒体网络教室" 破解/恢复规则.
  • 添加 URL 访问控件.
  • 添加 "重启" 控件.
  • 添加 i686 架构支持.
  • 退出命令提示符后强制重设窗口.
  • 优化 Console UI 性能.
  • 优化命令提示符使用体验.
  • 优化置顶显示性能.
  • 优化日志输出.
  • 优化软件内部常量定义.
  • 重绘图标.
  • 重构数据存储结构.
  • 重构多线程任务管理.
  • 重构破解/恢复操作命令生成为执行时生成.
  • 重构窗口初始化.
  • 增强代码可维护性与可扩展性.
  • 字符编码从 GBK 改为 GB18030.
  • 使用编译期常量替代部分宏定义.
  • 使用枚举常量替代部分字符字面量.
  • 使用 std::print 替代 std::printfstd::puts.
  • 使用 std::this_thread::sleep_for 替代 Sleep.
  • 使用 std::format 替代 std::string 拼接.
  • 修复操作系统命令执行相关安全问题.
  • 修复 "极域电子教室" 破解/恢复规则缺失服务.
  • 其他的改进和修复及技术性更改.

其他

  • 优化代码格式化配置.
  • 重构文档.
  • 重构构建.
  • 编译优化等级改为 Ofast (着重优化执行速度).

v5.11.1

16 Dec 16:22
Compare
Choose a tag to compare

当前版本

  • 使用 std::string 替代 const char*;
  • 移除多余 explicit 关键字;
  • 简化类的默认构造函数, 拷贝构造函数, 移动构造函数, 析构函数;
  • console_ui::func_args 数据成员 ui 改名为 parent_ui 并改为使用引用;
  • 添加 console_ui::optimize_storage()console_ui::optimize_text() 函数;
  • 添加 type_wrapper 类型别名模板;
  • 修复部分对象移动操作的错误;
  • 移除对未使用堆内存的对象的移动操作;
  • 更新文档;
  • 编译标准提升至 Gnu++ 26;
  • 常规的技术性改进和修复.

下一个主要更新

  • 使用 std::format(...) 替代 std::string 拼接;
  • 优化 "配置" 及 "工具箱" 界面初始化;
  • 优化 "信息" 中鼠标悬浮至 URL 文本时 URL 的文本属性;
  • 命令提示符界面允许缩放窗口;
  • 修复在包含非 GBK 字符的路径中启动无法正常提权;
  • 更新文档;
  • 常规的技术性改进和修复.

v5.11.0

09 Dec 22:40
Compare
Choose a tag to compare

当前版本

  • 重命名 mod.hppcore.hpp 并将命名空间 mod 改名 core;
  • console_ui.hpp 限制在 C++ 23 或更高 C++ 标准下编译;
  • console_ui::item_ 改为使用 std::deque 存储;
  • console_ui 添加若干公共函数及宏定义;
  • console_ui 所有公共函数禁止传入空指针;
  • console_ui 使用 std::this_thread::sleep_for(...) 代替 Sleep(...);
  • console_ui::size_type_ 改为公有成员并改名为 size_type;
  • console_ui 成员函数使用的迭代器改为常量迭代器;
  • 补齐 console_ui::ui_item_ 的移动构造函数;
  • 修复 console_ui 显示项目中的潜在问题;
  • 补齐系统命令中可执行文件的 .exe.com 文件扩展名;
  • 修改 UI 控件高亮颜色;
  • 使用 enum class 代替 enum;
  • 修复窗口初始化字符编码错误;
  • 优化类构造函数性能;
  • 优化字符串字面量可读性;
  • 移除命令提示符;
  • 修改启动脚本缩进;
  • 修改版权声明;
  • 更新文档;
  • 常规的技术性更改.

下一个主要更新

  • 使用 std::this_thread::sleep_for(...) 代替 Sleep(...);
  • 修改配置文件标签名称;
  • "修复模式" 改名 "环境修复";
  • 优化配置菜单初始化性能开销;
  • 优化配置文件写入逻辑;
  • 拆分置顶窗口与环境修复逻辑至单独函数;
  • 修改配置编辑界面控件高亮颜色;
  • 添加鼠标悬浮至 URL 控件上的下划线;
  • 修复 "增强窗口" 启用前后窗口关闭控件错误;
  • 添加用户界面初始化日志输出;
  • 补齐 core::toolkit::exec_cmdcore::config_op 的拷贝与移动构造函数;
  • 将类型标识符 constexpr const char *const 改为 const char *const;
  • 常规的技术性更改.

v5.10.6

02 Dec 16:21
Compare
Choose a tag to compare

当前版本

  • 优化代码格式化配置;
  • 优化短 case 代码块;
  • 优化 console ui 函数模板类 std::function 对象操作开销;
  • console_ui::item_number() 更名为 console_ui::item_counter();
  • 优化 console_ui::write_(...) 性能;
  • 使用结构体阻止所有破解/恢复规则;
  • 更新文档与构建;
  • 常规的技术性更改.

下一个主要更新

  • 优化代码格式化配置;
  • 优化短 case 代码块;
  • 优化 console ui 函数模板类 std::function 对象操作开销;
  • console_ui::item_number() 更名为 console_ui::item_counter();
  • 优化 console_ui::write_(...) 性能;
  • 使用 std::print(...) 替代 std::printf(...)std::puts(...);
  • 使用结构体阻止所有破解/恢复规则;
  • 修改并硬编码命令提示符窗口大小;
  • 简化配置加载日志输出;
  • 优化配置遍历;
  • repaired_mode 改为 repair_mode;
  • 优化修复模式注册表操作执行;
  • 修复启动日志输出错误;
  • 将 lambda 对象由拷贝改为移动;
  • 以非管理员权限重启时软件退出值改为 1;
  • 代码页设定使用 CODE_PAGE 宏替换, 值为 936;
  • 窗口标题设定使用 CODE_PAGE 宏替换, 值为 "CRCSN";
  • 优化代码可读性;
  • 更新文档与构建;
  • 常规的技术性更改.

v5.10.5

25 Nov 16:20
Compare
Choose a tag to compare

软件本体

当前版本

  • 使用自定义的 .clang-format 格式化代码;
  • 命令行参数错误不再重置已修改的参数;
  • 优化置顶窗口性能;
  • 修复创建多余破解/恢复规则条目;
  • 将部分移动操作开销大于拷贝操作开销的移动操作改为拷贝操作;
  • 使用谓语句优化判断;
  • 回退内联 console_ui::call_fn_(const MOUSE_EVENT_RECORD &);
  • 优化 "信息" 界面布局;
  • 移除版权声明中的 "All Rights Reserved." 字样;

下一个主要更新

  • 使用自定义的 .clang-format 格式化代码;
  • 重构数据存储结构;
  • 优化置顶窗口性能;
  • 取消配置文件文件名硬编码;
  • 更名 "保护模式" 为 "修复模式";
  • 降低 "修复模式" 操作执行休眠时间;
  • 优化 "信息" 界面布局;
  • 移除版权声明中的 "All Rights Reserved." 字样.

启动脚本

其他

  • 更新文档;
  • 更新构建;
  • 修改静态分析及调试配置.

v5.10.4

18 Nov 15:01
Compare
Choose a tag to compare

软件本体

当前版本

  • 破解/恢复规则的可执行文件项目不再在破解/恢复时追加 .exe 文件扩展名 (每个可执行文件项目补齐 .exe 文件扩展名);
  • 内联 console_ui::call_func_();
  • 优化 console_ui::rewrite_() 性能;
  • 优化 console_ui_fn_args 构造函数;
  • console_ui::remove() 更名为 console_ui::remove();
  • 优化 "关于" (现更名为 "信息") UI 初始化性能;
  • 移除类成员函数定义多余 inline 关键字;
  • 修复从其他终端启动软件并退出后窗口属性未重置;
  • 修复编译时启用 -Weffc++ 时产生警告;
  • 微调 UI 文本;
  • 常规的技术性更改.

下一个主要更新

  • 添加工具箱;
  • 添加 "保护模式" 配置选项;
  • 合并 "增强窗口" 和 "隐藏窗口关闭控件";
  • 破解/恢复将实时生成命令并执行;
  • 修改配置项目字符串;
  • 优化命令提示符使用体验;
  • 优化配置加载性能;
  • 修复加载自定义规则时崩溃 (使用 C++ STL std::string 代替自定义 simple_string);
  • 修复从其他终端启动软件并退出后窗口属性未重置;
  • 修复窗口控件编辑错误;
  • 修复 ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT) 参数错误;
  • 修复编译时启用 -Weffc++ 时产生警告;
  • 常规的技术性更改.

启动脚本

  • 常规的技术性更改.

其他

  • 更新文档;
  • 更新构建.

v5.10.3

11 Nov 14:33
Compare
Choose a tag to compare

软件本体

当前版本

  • 进入函数时默认锁定控制台 (隐藏光标, 禁止选中文字);
  • 修复 console_ui::lock 函数相关问题;
  • Windows API 函数调用显式使用 ANSI 编码;
  • 修改部分标识符命名;
  • 优化操作提示输出性能;
  • 优化编译平台检测;
  • 微调 UI 文本.

下一个主要更新

  • 添加文档;
  • 合并配置 "半透明窗口" 与 "置顶窗口" 为 "增强窗口";
  • 添加配置 "增强操作";
  • 添加配置文件不可读取时的提示;
  • 修复配置文件检测到未知标签时配置存储相关问题;
  • 修复配置文件保存时清空自定义规则;
  • 修复同步配置时操作提示文本错误;
  • 微调 UI 文本.

启动脚本

其他

  • 移除文档中二次编译相关内容;
  • 优化构建.

v5.10.2

04 Nov 15:18
Compare
Choose a tag to compare

软件本体

当前版本

  • 移除 def.hpp, 宏定义移入 info.hpp;
  • 重构 UI 库, 添加 lock(const bool)set_window(...) 函数;
  • 重构标识符命名为 snake_case;
  • 改用在命名空间内存储操作规则;
  • 将命令行参数 -Wa 改为 -Wt;
  • 修复破解/恢复界面的文字可选中;
  • 修复从其他终端启动并退出后光标消失且控制台属性错误;
  • 微调 UI 文本;
  • 常规的技术性更改.

下一个主要更新

  • 优化权限申请;
  • 使用 console_ui::set_window(...) 代替 mod::init();
  • 修复配置文件读取相关问题;
  • 微调 UI 文本;
  • 添加 < 重启 控件.

启动脚本

  • 微调文本;
  • 优化预处理;
  • 重构标识符命名为 snake_case.

其他

  • 更新文档;
  • 构建禁用 RTTI (Runtime Type Information).