羽云十六进制编辑器 WIKI
写在前面
本页面是对WingHexExplorer2的引导页面,通知用户当前的项目情况,提供帮助文档的指引。软件v2.3.2已在2025/11/30发布,v2.3.3已在2026/1/1发布。欢迎感兴趣的同志来参与和贡献代码。
目前该项目的 GitHub Pages 已初步上线,后续将逐步完善,该博客将作为国内快速访问的简介入口。
如果你对该软件感兴趣,欢迎加 QQ 群:795491946 ,我会尽快审核通过,请注意遵守群规。
v2.3.0 发现了保存文件能使程序卡死和原文件内容丢失的恶性 Bug,请使用者规避保存功能,请不要使用该版本的软件进行保存。请对自己的数据负责!!!
简介
一个自由的强大免费的十六进制编辑器,基于 QT C++ 进行开发,作者是寂静的羽夏。
如有 Bug, 欢迎反馈到 Github 上,如果你访问这有困难的话,也可以反馈到 Gitee 上。如果实在不行,可以通过我的 博客园 上公告栏的任意一种联系方式来告诉我。不过我还是希望你反馈到 Github 上方便我写递交注释的。
开源不易,也欢迎赞助或者参与代码和文档贡献,我默认会将您放入鸣谢标签的内容进行鸣谢。
许可证:AGPL-3.0
该软件经过长时间的迭代,目前成为了一个高自定义性、功能强大的十六进制编辑器。它具有以下功能特点:
- 基础的十六进制编辑查看编辑功能
- 支持打开 TB 级别的超大文件 (仅 64 位程序)
- 支持 标注(颜色标记、书签标记) ,且可以保存为工程文件以下次打开
- 自由定义布局、保存和导出自己常用布局 , 自由切换 不同布局用于不同分析目的
- 支持 克隆编辑 ,在 同一时刻对同一个文件 对不同的地方进行浏览和编辑
- 现代的 Ribbon 菜单 ,方便醒目的找到自己想要的功能
- 十六进制视图自由缩放(Ctrl+滚轮),对标题、地址栏和解码字符串栏可以自由显示和隐藏
- 对常见的数据类型进行实时解码
- 支持校验和计算
- 极速查找字节和字符串
- 友好的标注可视化
- 多选区支持 (按住 Shift 会增加选区,Alt 会裁剪选区。在含有多个选区的情况下,不按住任何键拖放的选区会在鼠标释放按键之后消失。按住 Ctrl 选区会取消原有的选择的内容,同时按住 Shift 和 Alt 视为 Ctrl 的操作)
- 强大的脚本系统 ,用于批量分析二进制数据(AngelScript)
- 强大的插件系统 ,实现对软件的较高自由度定制和增强,并提供组件注册和基础的脚本系统函数绑定
- 内置脚本编辑器 ,自带语言服务器,提供代码填充和调试功能,并且支持代码格式化
- 内置暗黑和浅色主题
最新发布日志
该仓库仅提供基于 QT6 的十六进制编辑器安装包,对于 Windows 采用 InnoSetup 安装包。对于 Linux 采用 run 自解压安装文件进行安装,请在终端使用命令行使用 root 权限进行,若要卸载请到/opt/WingHexExlorer2下进入终端使用 root 权限执行uninstall.sh完成卸载。 在 Linux 上,如果你有对应的编译环境,我不推荐使用 run 安装文件方式。 因为为了保证安装包的通用性,我在里面部署了大量的库,包括对应的 glic 和 ld-linux和对可执行文件做了patch,让文件总体积膨胀,这是一个很不划算的事情。建议使用mkinstaller下的pyscript进行安装。
本软件不会以任何理由主动向你收取费用,你通过下载渠道给的费用一分钱也不会到我这里,请注意。
如有 Bug ,请到Github或者Gitee提交issue。如果有功能建议,也可以通过issue,不过我更建议 到 Github 的 discussion 区提交 。
该工具的定位是对二进制的编辑和分析。欢迎热心的大佬一起共建基础开源工具。
目前只有我一个人开发,我不可能能够把每个功能做好测试,尤其是做 高风险 的操作,点名在 root 权限下操作文件。
我可能不会对每个 Bug 能够积极响应,不过对大家的建议和需求我会尽可能地尽早回复和评估处理。
更新内容
本次更新版本号为2.3.3,包含少量的 Bug 修复和一些小功能调整优化,下面是更新日志:
- 【中等】修复计算完整文件校验和错误,由于计算前未调用
seek(0)导致部分计算 - 【中等】修复脚本运行句柄会泄漏的问题
- 【轻微】软件的 Toast 消息组件在高分辨率屏幕上会导致最后一个字会被省略掉
- 【轻微】脚本处于调试状态且被断点断下时,修复添加新的监视不会立即自动计算结果的问题
- 【轻微】修复对于 pragma 脚本宏命令报错不精准的问题
- 【轻微】修复树列表显示渲染问题
- 【调整】新增
Crc16、Crc32和Crc64常见校验和计算 - 【调整】和十六进制编辑绑定的数据可视化滚动位置将会被记忆和恢复(比如搜索结果、校验和、书签和元数据标记以及字符串解码)
- 【调整】现在校验和选择框已被优化,方便选择,且会当前未关闭状态下记忆上次的选择
- 【调整】在计算校验和中,未被计算的选项将会被隐藏
- 【调整】目前软件自绘标题栏在 Linux 的 x11 和 wayland 上支持右键系统菜单支持(qwindowkit#203,同本软件作者提供实现并合并)
- 【调整】目前软件自绘标题栏会对窗体失去焦点提供颜色反馈
- 【调整】脚本增加
crypto模块,预编译器提供__WING_CRYPTO__进行检查 - 【调整】使用 Ninja 作为 CI 编译生成器
- 【调整】废弃系统脚本头文件 aslib,不再支持
#include <FILE> - 【调整】废弃插件目录安全性检查
- 【调整】优化文件保存功能,当多文件关闭时未保存则统一弹窗提示
- 【调整】优化编辑器 Tab 的右键菜单
- 【调整】废弃所有直接新建/打开/关闭十六进制文件相关的插件接口,因为有些接口不完善且没有太大必要,徒增维护成本,目前插件打开文件仅能够获取编辑器已打开的文件句柄,关闭文件仅移除句柄。
- 【调整】软件的插件 SDK 版本将会显示在 设置-基本 里面
- 【调整】优化插件加载日志
如果发现有 Bug 月更,如果没有充足热度和赞助将停止功能性更新。
已知问题或缺陷
软件有些是已知问题,由于影响不大且不好解决的或者不提供支持维护的,就会被列到这里面。我不会主动去尝试修复它,因为我只要列到这里面,对于很多问题,我已经做了大量的尝试,但没有很好的解决。如果是上游问题,等上游解决之后,我有时间的时候同步一下就解决了。如果不是,那就等热心大佬 PR 吧。
对于第 2-3 问题,你可以通过非安全的注册方式来实现,但是,你需要很清楚 AngelScript 的通用调用机制,并且确保你对类型的转化和解引用操作都是正确的,确保返回值指针有效性,因为这个模式下不会有任何检查,否则指针会让你飞起来(感兴趣可以阅读
WingAngelAPI::script_call相关代码)。
- 32 位程序下运行使用如果有问题:不提供支持,但如果解决,可 PR 。
- 脚本安全注册方式返回值不支持数组和列表:是这样的,这个实现太麻烦了,如果要支持,我只能支持 QVariantList 作为返回值容器,但是,我不一定知道 QVariantList 装的东西是什么,进一步校验和转化也是很麻烦的问题。
- 脚本安全注册方式不支持引用:是这样的,实现方式不支持引用,要引用就需要指针,但我没有提供这个机制,反射也反射不出来。
后面更新
我将会根据知名度我会酌情偏向更新文档内容(目前没啥知名度和赞助,暂停)。
下一次含有大功能更新版本号为2.3.11,该更新内容的完成度将会与用户量和赞助密切相关,但以下内容可能不会完全实现(目前没啥知名度和赞助,不实现):
- 更加充分支持 angel-lsp 的功能,而不是仅仅代码填充和报错诊断
- 实现脚本的帮助系统
- 调试器支持 DAP ?
- 实现单独的 Headless 模式运行脚本进行批量分析?
- 支持 bundle 插件加载器,让单一插件文件支持多外部依赖自动加载打包和跨操作系统以及跨 CPU 平台加载?
FAQ
-
为啥不在搜索结果增加筛选排列功能(其他表格类控件同理):
答:功能很好,但是在数据量很大的情况下,很卡,但我没有精力和经验来处理这个事情。 -
该软件和 WingHexExplorer 有什么区别,我还可以继续使用 WingHexExplorer 这个软件吗?
答:新版软件具有更强大的布局组件、跨平台和 UI 统一性。功能上自带 AngelScript 脚本引擎,相比于 Python 可能会有更好的 API 兼容性和速度(未测试),并且可以具有更好的 API 权限管控,会更安全一些。还有它更擅长处理多文件编辑,你可以对同一个文件同时在不同位置进行预览/编辑,这就是“克隆”功能。十六进制编辑器还增加了 Ctrl + 鼠标滚轮原生缩放支持。该软件对任意编辑中的文件窗体隐藏,哈希值计算,对书签更好的可视化以及标记的可视化和更好的插件支持,以及进一步的 Bug 修复。在 v2.0.0 规划完成发布之后,还会有深度配合的代码编辑器和调试器,正好是一个小型的 AngelScript IDE。这些都是 WingHexExplorer 软件所不具备的功能,这里还有很多小细节没说,这个软件会更加专业,也会更加好用。
WingHexExplorer 这个软件仍旧是能用的,但还是有点小 Bug,只要你不是深度使用是不会有问题的,比如预览和简单的编辑普通文件。但它有 Bug,我也不会去修了。 -
该软件和 WingHexExplorer 兼容吗?
答:项目文件是可以兼容的,但插件还是按照老约定,采用不兼容处理,因为变化太大了。
版本规划
当收到的指定赞助金额满足一定程度来开发以下列出的功能时,我将主动花费我的业余时间来完成这件事情。当然 PR 也是可以算作“赞助内容”,毕竟是贡献代码,以下所有的功能都接受 PR 。如果你想要通过赞助金额来支持该项目来开发功能的话,请注明备注该任务名称,我将会在该篇日志更新,金额达到之后就开始进入排队开发。如果注明仅 PR 的,则不接受金额赞助开发。一旦受赞助的功能开始开发,原则上不退款。这些赞助内容将会以 AGPL-3.0 开源发布。 目前考虑到的内容如下:
- 尝试增加 AngelScript 对 QT 用户界面组件的绑定尝试,可以通过脚本实现插件。(若指明赞助该功能 450 RMB,增加窗体、标签、按钮、文本框支持,其他暂不支持,除非 PR)
- 为脚本解释器增加 JIT。(目前仅 PR)
- 外部可自定义主题以及可更换图标。(100 RMB)
- 该软件提供的 AngelScript addon 提供完全的 Generic Call 支持。(100 RMB)
- 脚本编辑器的代码片段管理器支持。(100 RMB)
当然也可以通过赞助来让我开发插件,插件可以选择开源和闭源,但如果赞助低于 500 RMB的,插件仅可选择开源,但可以自选开源基金会认可的开源协议。
帮助文档
目前推荐 Github,不过目前仍处于编辑开发状态,还是不全。Gitee 我也同步上去了,但是,若图显示不出来,请启用Github加速工具(比如Watt ToolKit或者devSideCar等),因为图片链接来源于Github。
发行版下载
Github: https://github.com/Wing-summer/WingHexExplorer2/releases
Gitee: https://gitee.com/wing-cloud/WingHexExplorer2/releases
本文来自博客园,作者:寂静的羽夏 ,一个热爱计算机技术的菜鸟
转载请注明原文链接:https://www.cnblogs.com/wingsummer/p/18286419



浙公网安备 33010602011771号