Release Notes

版本说明

查看 010 Editor 各版本的新功能、改进和 Bug 修复记录

补丁

版本 16.0.4

2026 年 3 月 5 日

  • 修复了"全部替换"操作后,有时文件末尾的字节在进行另一次编辑前未正确绘制的问题
  • 修复了当 010 Editor 最小化时,从 Windows 资源管理器打开文件不能正确恢复应用程序的问题
  • 修复了在"运行于文件"下拉列表中,现在可以在文件的重复视图上运行模板
  • 修复了 Linux 上 Shift_JIS 字符集在某些文件上可能导致崩溃的问题(从 icu 切换到 iconv)
  • 修复了"跳转到地址"现在可以正确处理模板结果中十进制/十六进制表示的数字
补丁

版本 16.0.3

2026 年 1 月 15 日

  • 修复了某些输入法编辑器(IME)未在正确位置显示的问题
  • 修复了将空字符串赋值给变量可能导致不兼容类型错误的问题
  • 修复了在长时间操作期间重启"在文件中查找"可能崩溃的问题
  • 修复了 ++ 运算符在嵌套结构体语句中访问数组元素时可能被计算两次的问题
  • 修复了对某些无效模板调用 RunTemplate 时崩溃的问题
  • 修复了 PasteFromClipboard 函数应始终插入数据(即使十六进制编辑器处于覆盖模式)
  • 修复了当监视包含无效数组访问语句时调试脚本的问题
  • 修复了鼠标悬停在重复数组上可能显示数组大小偏差一的问题
  • 修复了替换大量匹配项时的一些更新问题
  • 修复了删除书签时可能崩溃的问题
  • 修复了 Linux 上使用某些 IME 时,切换到其他应用程序可能删除已选文本的问题
  • 修复了某些 Linux 窗口管理器上的渲染刷新问题
  • 在许可证对话框中,检测并提示删除输入名称前后的多余空白字符
  • 在 Linux 上,现在可以使用 QT_NO_SHADOW 环境变量关闭主窗口阴影
  • 使用 -debug 时显示更多启动信息
补丁

版本 16.0.2

2025 年 10 月 1 日

  • 修复了当 010 Editor 最小化时关闭,重启后窗口大小不正确的问题
  • 修复了对字符串使用 <pos> 属性时不能始终正确计算字符串大小的问题
  • 修复了向 SPrintf 传递结构体时可能崩溃的问题
  • 修复了 SPrintf 未正确返回写入字符数的问题
  • 修复了浮动标签组窗口中 Alt 加某些快捷键不能正常工作的问题
  • 修复了使用仓库对话框还原文件时可能崩溃的问题
补丁

版本 16.0.1

2025 年 8 月 18 日

  • 修复了校验和对话框中"忽略字节范围"复选框不可见的问题
  • 修复了某些 Linux 系统上启动 Wayland 的问题
  • 修复了按住 Shift 并按 Page Down 在某些情况下可能导致光标超出屏幕的问题
  • 修复了在十六进制编辑器最后一行绘制结构体轮廓线的问题
  • 修复了 Linux 上 i3 窗口管理器绘制阴影时的问题
  • 修复了同时运行多个包含 size 函数的模板时的竞态条件
  • 在安装程序中添加了关于不支持 Windows 10 之前版本的警告
主要版本

版本 16.0

2025 年 7 月 31 日

版本 16.0 新功能概述:

  • 标签页现可放置在应用程序的标题栏中
  • 更新界面风格以更贴合 Windows 11,包括圆角 UI 元素和滚动条
  • 新增 macOS ARM 支持
  • 可使用任何正则表达式或查找表达式对文件应用高亮
  • 新增 <pos=...><localpos=...> 属性,用于将变量放置在指定地址
  • 新增 <edit=check|color|flags>,在模板结果中显示复选框、颜色框或标志选择框
  • 增量查找功能:在查找栏中输入时即时搜索
  • 查找和在文件中查找功能现以多线程方式运行
  • 计算熵值,使用熵图确定文件中包含随机数据的区域

标签页

  • 标签页可放置在应用程序的标题栏中
  • 可通过主题/颜色选项对话框更改标题栏颜色
  • 可通过打开文件/标签页选项对话框更改标签位置
  • 鼠标悬停在标签上时,完整文件名会显示在状态栏中
  • 滚动按钮在浏览大量标签时表现更佳
  • 欢迎页面会询问是否将标签移至标题栏
  • 当前项目名称现显示在标题栏中,用方括号 '[' ']' 包围

界面风格

  • 更新风格以更贴合 Windows 11,包括圆角 UI 元素和滚动条
  • 点击应用程序左上角图标可访问启动页面
  • 启动页面采用全新风格
  • 更新了部分应用程序区域的字体大小
  • 可通过主题/颜色选项对话框关闭新风格

模板和脚本

  • 新增 <pos=数值|函数|表达式> 属性,便于将变量放置在文件中的指定地址
  • 新增 <localpos=数值|函数|表达式> 属性,将变量放置在相对于其父结构的偏移位置
  • 新增 <format=decimalhex>,同时以十进制和十六进制显示数字(例如 16 [10h])
  • 新增 <edit=check>,在模板结果表中显示复选框
  • 新增 <edit=color>,在模板结果中显示颜色选择器矩形
  • 新增 <edit=flags>,将枚举类型解释为一组标志
  • 变量现可在 'for' 语句中定义
  • 新增 <warn=false>,关闭特定变量的警告
  • <hidden> 属性现可为任意表达式或函数
  • 单比特位域现自动分配复选框
  • 现在允许 for(;;) 语句
  • "运行模板"、"运行脚本"和"运行于文件"下拉列表现按字母顺序排列
  • 运行脚本时现在定义 _010_SCRIPT 常量
  • 在模板结果中打开大数组时显示警告(超过 1000 万条目)
  • 改进了某些情况下使用 '.' 运算符在结构中定位变量时的错误消息
  • 模板结果和某些其他表格可使用十进制/十六进制列显示格式
  • 新增 EnumFlagsToString 和 EnumStringToFlags 函数
  • 新增 DisplayFormatDecimalHex 函数
  • 新增 BitfieldGetAutoCheckBox 和 BitfieldSetAutoCheckBox 函数
  • ExportFile 函数新增 includeSpaces 和 includeLinefeeds 选项
  • "跳转到模板变量"功能对不连续结构体的支持更好
  • 按需结构体在打开时更一致地应用颜色

查找

  • 增量查找功能:在查找栏中输入时自动搜索
  • 查找和在文件中查找功能现以多线程方式运行
  • 支持快速查找下一个/上一个:在编辑器中选择内容后按 F3 或 Ctrl+F3
  • 可在查找栏高级选项中关闭增量搜索和快速查找
  • 正则表达式替换字符串中支持 \U、\L、\u 和 \E 以更改捕获组的大小写
  • 非正则表达式替换字符串中现支持 \x??
  • 将"搜索"工具栏重命名为"查找"以保持一致性

高亮

  • 可使用任何正则表达式或查找表达式对文件应用高亮
  • 使用高亮选项对话框添加正则表达式高亮
  • 在查找栏中,可点击"全部"按钮旁的上箭头,选择"添加高亮器"
  • 使用"视图 > 高亮"开启或关闭高亮,高亮规则持久保存
  • 高亮支持区分大小写、全字匹配和颜色选项
  • 高亮可应用于单个文件或共享同一"编辑为"的所有文件
  • 其他查找表达式可通过在表达式后添加逗号和类型说明符来使用高亮
  • 右键点击已应用高亮的文件,选择"清除文件高亮"可关闭高亮
  • 高亮现对文本和十六进制有不同的默认颜色
  • 新增"零字节"高亮规则,用于高亮所有 00 字节
  • 新增"视图 > 高亮 > 自动高亮选项"菜单

熵分析

  • 可使用"工具 > 直方图/熵"计算文件的熵值
  • 熵值显示文件的随机程度,范围从 0.0(全部同一值)到 8.0(完全随机)
  • 通过将文件分割为 512 字节块并计算每块的熵值来显示文件的熵图
  • 可在直方图/熵对话框中调整块大小
  • 将鼠标放在图表上可查看高亮范围的熵值、起始地址和选中的块数
  • 点击图表可在编辑器中选择对应块的字节

macOS

  • 新增 macOS ARM 支持
  • 最低支持平台现为 macOS 10.14

Linux

  • 最低支持平台现为 Ubuntu 18.04
  • 滚动条和标题栏采用新风格
  • 修复了某些 Linux 系统上启动 Wayland 的问题

通用

  • 升级 Qt 库至 6.4.3
  • 升级 Oniguruma 正则表达式库至 6.9.10
  • 可从 Windows 资源管理器拖放文件到浮动标签组窗口
  • 可从 Windows 资源管理器拖放文件到比较对话框的文件字段
  • 加载 LNK 文件时,尝试读取不包含 Unicode 路径的旧版 LNK 文件
  • 新增"视图 > 字体 > 重置字体大小"和"视图 > 字体 > 重置字体"操作
  • 在跳转栏中新增"跳转后隐藏跳转栏"和"跳转后焦点编辑器"选项
  • 将"复制为文本区域"重命名为"复制为十六进制编辑器区域"
  • 将"导出文本区域"重命名为"导出十六进制编辑器区域"
  • 在页面设置对话框中新增"显示行"切换选项

文本编辑器

  • 在格式菜单中新增删除到行末的选项
  • 使用自动缩进且启用插入制表符时,现在将制表符而非空格插入文件

十六进制编辑器

  • 复制为十六进制文本现有选项控制是否包含空格或换行符
  • 新增选项:从十六进制编辑器的十六进制字节区域复制时始终复制为十六进制文本

选项

  • 将"打开文件"页面重命名为"打开文件/标签页"
  • 将"导入"重命名为"导入/导出"
  • 将"检查器"重命名为"检查器/表格"
  • 在"通用"页面中新增选项:从十六进制字节区域复制时始终复制为十六进制文本
  • 在"文本编辑器"页面中可设置行号的最小位数
  • 在"打开文件/标签页"页面中可选择标签显示在标题栏还是编辑器上方
  • 在"打开文件/标签页"页面中新增强制所有文件以只读方式打开的切换
  • 在"打开文件/标签页"页面中可切换鼠标悬停标签时是否在状态栏显示完整文件名
  • 在"主题/颜色"页面中新增标题栏、文件标签页图标和分隔线的颜色选项
  • 在"主题/颜色"页面中高亮颜色对文本和十六进制有不同的默认值
  • 在"主题/颜色"页面中新增菜单和分组框的原生开关
  • 在"主题/颜色"页面中新增"使用更高标签"选项
  • 在"主题/颜色"页面中新增关闭圆角菜单、按钮和滚动条的选项
  • 在"高亮"页面中,高亮现可为正则表达式或查找表达式
  • 在"高亮"页面中可设置高亮的作用范围为单个文件或按编辑为分组
  • 在"编译"页面中新增警告选项:当尝试打开包含大量子节点的节点时发出警告
  • 在"导入/导出"页面中新增导出十六进制文本/复制为十六进制文本的包含空格和包含换行符选项
  • 在"检查器/表格"页面中新增十六进制显示格式选项:'FFh'、'0xFF' 或 'FF'

Bug 修复

  • 修复了文本模式下覆盖时,有时较长的 UTF-8 字符不能正确覆盖的问题
  • 修复了对包含撇号的单词使用大写化时不正常的问题
  • 修复了反汇编有时不能正确计算 'jmp' 语句地址的问题
  • 修复了调试某些文件时行号偏差一行的问题
  • 修复了 Lua 在 Linux 系统上不能正确加载的问题
  • 修复了搜索进程时,如果进程结构发生变化,FindAll 有时不能搜索整个进程的问题
  • 修复了调用 FileClose 后访问变量时可能崩溃的问题
  • 修复了 EnumToString 不能正确识别本地数组中某些枚举的问题
  • 修复了 Oniguruma 库中某些正则表达式导致崩溃的问题
  • 修复了 RunTemplate 后调用 FileSelect 可能导致某些类型被遗忘的问题
  • 修复了 RunTemplate 后 FPrintf 打印位置会在某些文件上重置的问题
  • 修复了使用 <optimize=false> 的联合体数组时可能崩溃的问题
  • 修复了放大和缩小有时不能正确重置水平滚动条的问题
  • 修复了 AddressLocalToFile 和 AddressFileToLocal 函数未考虑自定义偏移的问题
  • 修复了进行比较时隐藏的浮动标签组有时会显示的问题
  • 修复了有时 HTML 标签未在状态栏中正确显示的问题
  • 修复了使用 #include 包含含有 '..' 的文件时可能崩溃的问题
补丁

版本 15.0.2

2025 年 3 月 31 日

  • 修复了使用比较结果时同步滚动不能正常工作的问题
  • 修复了删除某些 XML 文件中的块时崩溃的问题
  • 修复了在模板结果中选择非常大的数组在某些情况下速度较慢的问题
  • 修复了导入模板/脚本时斜杠转换到正确平台的问题
  • 修复了使用 RunTemplate 函数时与类型比较相关的错误消息
  • 修复了名称函数对某些未优化数组不起作用的问题
  • 修复了输入无效监视语句时的错误消息
补丁

版本 15.0.1

2024 年 10 月 11 日

  • 修复了"格式 > 注释选区"在大多数情况下不能检测到正确语法的问题
  • 修复了以十六进制方式打开文件并切换到文本模式时,有时状态栏不显示当前换行符的问题
  • 修复了"视图 > 换行符 > 初始换行状态"在某些情况下未被遵守的问题
  • 修复了 ASCII+OEM 字符集前 32 个字符显示不正确的问题
  • 修复了输入法编辑器现在遵守覆盖模式
  • 修复了"复制为文本区域"不能正确复制某些非 ASCII 字符的问题
  • 修复了 macOS 上更改 Home/End 键盘快捷键不起作用的问题

体验最新版本

下载 010 Editor 免费 30 天试用版,体验所有最新功能和改进。