ImHex是一款开源的十六进制编辑器,软件使用了类似于C++的自定义语言,用于突出显示文件内容,提供了语法高亮显示和error标记,支持并能快速有效地加载大型文件,非常适合程序员或系统管理员下载使用。
软件特征
十六进制视图
字节补丁
补丁管理
复制字节作为特征
字节
十六进制字符串
C、C++、 c#、 Rust、Python、Java 和 JavaScript 数组
ASCII-Art 十六进制视图
HTML 自包含 p
字符串和十六进制搜索
彩色高亮显示
从开始、结束以及当前光标位置 goto
类似于 C++ 的自定义语言,用于突出显示文件内容
基于 MIME 类型的自动加载
数组、指针、结构,共用体,枚举,位段,使用声明,大小端支持
有用的 error 信息,语法高亮显示和 error 标记
数据导入
Base64 文件
IPS 和 IPS32 补丁
数据导出
IPS 和 IPS32 补丁
数据 Exporting
数据检查器允许将数据解析为多种类型(小端和大端)
支持并能快速有效地加载大型文件
字符串搜索
复制字符串
复制 demangled 字符串
文件哈希支持
具有自定义初始值和多项式的 CRC16 和 CRC32
MD4, MD5
SHA-1, SHA-224, SHA-256, SHA-384, SHA-512
支持多种架构的反汇编器
ARM32 (ARM, Thumb, Cortex-M, aarch32)
ARM64
MIPS (MIPS32, MIPS64, MIPS32R6, Micro)
x86 (16 bit, 32 bit, 64 bit)
PowerPC (32 bit, 64 bit)
Sparc
SystemZ
XCore
M68K
TMS320C64X
M680X
Ethereum
自定义视图
区域突出显示
注释
数据分析
基于文件解析器和 MIME 类型的数据库的 file magic
字节分布图
熵图
最大熵和平均熵
加密 / 压缩文件检测
实用工具
Itanium 和 MSVC demangler
ASCII 表
正则表达式替换
数学表达式评估器(计算器)
十六进制颜色选择器
为模式语言和数学评估内置速查表
在深夜使用时对视网膜友好
界面美观
每款编辑器都有自己的风格,越来越多的开发者青睐于黑色背景、彩色高亮显示的界面风格,ImHex 就是如此:
编译
假设你在 Windows 或者 Arch Linux 中使用 mingw,需要兼容 C++20 的编辑器(例如 GCC 10.2.0)来编译 ImHex。编译 ImHex 需要的库都可以在 pacman 包中找到,如下所示:
GLFW3 ( (sudo) pacman -S glfw )
libmagic, libgnurx, libtre, libintl, libiconv ( (sudo) pacman -S file )
libcrypto ( (sudo) pacman -S openssl )
capstone ( (sudo) pacman -S capstone )
libLLVMDemangle ( (sudo) pacman -S llvm llvm-libs )
nlohmann json ( (sudo) pacman -S nlohmann-json )
Python3 ( (sudo) pacman -S python3 )
All in one for Arch Linux: sudo pacman -S glfw file openssl capstone llvm llvm-libs nlohmann-json python3
All in one for Fedora: sudo dnf install cmake gcc-c++ capstone-devel glfw-devel glm-devel json-devel llvm-devel mesa-libGL-devel openssl-devel python-devel
All in one for MinGW: pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-capstone mingw-w64-x86_64-glfw mingw-w64-x86_64-glm mingw-w64-x86_64-file mingw-w64-x86_64-llvm mingw-w64-x86_64-nlohmann-json mingw-w64-x86_64-openssl mingw-w64-x86_64-polly mingw-w64-x86_64-python
安装完这些库之后,运行以下命令来构建 ImHex:
mkdir build
cd build
cmake 。。
make -j