strobejb/q22

GitHub: strobejb/q22

一款基于 Qt6 重写的跨平台十六进制编辑器,提供二进制结构解析、多架构反汇编和丰富的数据导入导出能力。

Stars: 0 | Forks: 0

# Q22 [![构建与测试](https://static.pigsec.cn/wp-content/uploads/repos/cas/a9/a9f4787624714e7c728582f9fd19ca892a359274bd12b88cdd60e2d5f688d9fc.svg)](https://github.com/strobejb/q22/actions/workflows/build.yml) [![发布](https://static.pigsec.cn/wp-content/uploads/repos/cas/42/42ba98a60a0bb3b0ad908f024db145f9c5b831eb7df822f56ac578ee7d7215b3.svg)](https://github.com/strobejb/q22/actions/workflows/release.yml) Q22 是一款跨平台的二进制文件编辑器——它是原始 Windows 平台下 Catch22 HexEdit 应用程序的继任者。

核心的文件编辑和十六进制查看功能沿用了原始的 HexEdit,同时应用程序的 UX 很大程度上已使用 Qt6 重写。其目标是保留原始 HexEdit 直接且强大的二进制编辑模型,同时使 UI、设置、主题、打包和跨平台基础架构现代化。 ## 功能 编辑: 结构视图: - 通过 C 风格的结构体检查文件。 - 内置支持 PE 和 ELF 文件。 - 展开头部、节区、导入表、导出表、符号及相关表格。 - 根据文件类型或 magic bytes 自动选择已知格式。 - 使用 Strata 语言添加自定义 `.struct` 定义。 反汇编: - 反汇编代码! - 支持 x86 64 位、x86 32 位、ARM、ARM Thumb 和 AArch64。 - 自动检测 PE 和 ELF 的 entrypoint。 - 浏览发现的函数,并在反汇编与字节码之间跳转。 书签与注释: - 在十六进制显示区域中进行书签标记和高亮显示。 - 通过书签查看器快速访问已保存的书签位置。 - 书签状态会被持久化以供日后使用。 剪贴板、导入和导出格式: - “复制为”和“选择性粘贴”工作流,用于在文本和二进制形式之间移动数据。 - 使用多种格式导入和导出文件或剪贴板数据。 - 十六进制、ASCII/文本和原始数据。 - Base64 和 UUEncode。 - Intel HEX 和 Motorola S-records。 - HTML。 - C++、C 和汇编风格的数据。 UX: - 文件属性、校验和计算和字符串提取面板。 - 最近打开的文件和可配置的首选项。 - 浅色、深色和系统主题模式。 - 内置调色板,以及自定义调色板的创建和编辑。 - 自定义标题栏、停靠面板,以及针对 Windows、KDE/KWin 和 GNOME/Mutter 的平台专属窗口外观。 - Windows 和 Linux 的构建/发布工作流。 ## 构建 ``` cmake -B build -DCMAKE_BUILD_TYPE=Release cmake --build build --parallel ctest --test-dir build --output-on-failure ``` ## 支持的平台 * Linux(目前为 Fedora) * Windows 更多平台即将推出! ## 许可证 版权所有 (C) 2001-2026 James Brown。 Q22 采用 GPL-3.0-or-later 许可证。完整的许可证文本包含在 [LICENSE](LICENSE) 中。 发布版本是使用 `MAJOR.MINOR.PATCH` 版本号从 GitHub Actions 的 **Release** 工作流手动创建的。
标签:Bash脚本, Qt6, SNI设置, Wayback Machine, 二进制文件, 云资产清单, 反汇编, 逆向工程