如何用ImHex详细展示二进制文件结构细节?
摘要:用ImHex展示二进制文件的结构 我之前在010 Editor 和 Hex Editor Neo上展示过利用解析规则进行二进制文件结构的解析,这是文件格式解析的新兴工具(不过可惜的是UltraEdit并没有支持它)。 今天在试用ImHex这
用ImHex展示二进制文件的结构
我之前在010 Editor 和 Hex Editor Neo上展示过利用解析规则进行二进制文件结构的解析,这是文件格式解析的新兴工具(不过可惜的是UltraEdit并没有支持它)。
今天在试用ImHex这个编辑器中,我发现它也提供了类似的功能,于是拿来试试之前的配方文件格式(见之前博客)。
ImHex的作者定义了一种叫Pattern Language的样式规则,用于 ImHex的自定义数据处理。(参见https://github.com/WerWolv/Documentation/tree/master/pattern_language)经过研究,发现类似于010 Editor, 这套规则文件也是比较容易掌握的,但展示方面ImHex还有所改进和提升。除了对数据的背景色进行定义外,它还可以在属性中应用函数hex::visualize可以将数据按需要,展示为图像(image,可支持JPG, PNG, TGA, BMP, PSD, GIF, HDR 和 PIC格式)、3D图(3d)、散点图(scatter_plot)、线型图 (line_plot)、地图上的经纬度(coordinates)等,也可以用函数hex::inline_visualize将数据展示为color,gauge, button等不同类型。详细的语法和用法,github上提供了详细的语言规则。Pattern Language.
下面这个图中,上部为高亮后的数据,下部为各部分的结构名称,为一一对应关系。
