当前位置: 首页 > news >正文

基于Hex Editor Neo的二进制文件模板

之前用010Editor做过一个二进制配方文件的模板,感觉挺好用。后来发现Hex Editor Neo(以下简写为HEN)也有二进制的模板功能,但玩法与010Editor有点不太一样,于是研究了一下。

010Editor用的是BT后缀的文件,其实也就是一个文本格式的C语言脚本,它准备了比较易懂的一步一步写模板的教程,学习起来并不费劲。 HEN则直接用.h后缀的头文件, 将文件的结构编写放在一起,甚至还可以包含其它脚本文件。但具体怎么操作,帮助中说明不太清楚,因此需要摸索一阵。

大体思路是类似的,先打开一些软件自带的其它格式的头文件,看看它们是怎么写的,学习一下它的语法或大概的数据类型。

分几步如下:

1。把我自己的文件结构翻译一下即可,并不复杂(还没有接触它的函数功能)。文件写好之后,保存为 fmds_neo.h,
fmds文件结构

2。然后点击菜单“工具--结构查看器--库--添加结构文件“, 把编辑好的文件fmds_neo.h找到并添加到库内。关闭之后,重新启动HEN,它就会编译库里面的头文件。如果头文件有错它也 会告诉你错在哪一行,比较方便查找,修改以保证不出现错误提示。

3。用HEN打开要查看的二进制文件,比如我的fmds后缀的配方格式文件,显示为十六进制的内容。再依次点击菜单 "工具--结构查看器--绑定...",将编译好的文件的结构中(所有的public struct都会显示在对应的头文件fmds_neo.h下面,有几个定义好的类),选择代表文件结构的类ParsedData与当前文件绑定,这样就可以解析了。HEN与010有所不同的是,这里一个文件中可以保存多个不同的结构,选择一个结构与当前文件绑定就可以(同时要定义一个变量名); 而010则是BT文件本身与要解析的文件结构对应。但两者并无本质差异。

4。绑定好之后,在结构查看器的窗口顶部菜单中选择 "保存方案...",给方案一个名字,我用的是"FMDS by dingsir". 这个方案就表示用fmds_neo.h头文件定义的结构ParsedData类来解析这种二进制格式。不保存这个方案,下一步就不能操作。

5。为了打开fmds格式的文件时自动调用这个方案来解析,还需要做一步。依次点击菜单项“工具--结构查看器---关联...",用正则表达式定义一下文件名,下面选择对应的方案,然后点击“添加“即可。

将后缀与方案关联

整体来看,还是比较麻烦的,但背后的逻辑还算清晰。

最后看一下解析的结果。
文件与模板解析结果

在窗口激活的情况下,鼠标光标移到选中的十六进制值上,弹出的提示会显示当前在哪个结构哪个变量之中,比较方便。

关于进一步的颜色显示与更高级的解析提示 ,还需要学习一下。先记一下备忘。

2025-9-22

http://www.gsyq.cn/news/9912.html

相关文章:

  • 【F#学习】字符
  • kubebuilder创建Operator示例
  • 集训总结(八)
  • x6831卡顿分析
  • 实测对比:权威榜单之微信排版软件Top5(含详细测评)
  • C++中std::map容器中元素删除方法汇总 - 详解
  • 9.22 科研小结:不要总是预设成功,失败才是常态
  • 多模态算法QwenVL、KimiVL等算法原理 - Big-Yellow
  • 从用户态到内核态:Windows CC 技术深度解析(第一篇:DNS隧道)
  • github操作备忘录
  • 算法人生
  • 动态规划专题
  • 每日反思(2025.9.22)
  • 洛谷题单指南-进阶数论-P4942 小凯的数字
  • 三门问题的多种解法,总有一个你看得懂
  • 详细介绍:无公网 IP 访问群晖 NAS:神卓 N600 的安全解决方案(附其他方法风险对比)
  • 2025.9.18 总结
  • 9.16 总结
  • Halcon抛出异常日志
  • ZYNQ PS 端 UART 接收数据素材帧(初学者友好版)嵌入式编程 C语言 c++ 软件开发
  • Photoshop 2025 v26.0(PS2025)下载安装教程(含一键安装包下载)
  • 网络加速原理
  • 数据结构思维题选做(长期更新)
  • 政治笔记/错题
  • 【mysql】mysql客户端中文显示乱码
  • k8s系列--资源清单yml文件
  • k8s系列(14)--探针检测
  • k8s系列--控制器yml(15)
  • AT_abc200_e [ABC200E] Patisserie ABC 2 题解
  • 日总结 5