hexview 命令行操作使用说明
命令行操作基础格式
hexview.exe infile [option] -o outfile
提取部分内容
hexview.exe app.hex /AR:0X200000-0X303404 /s /XI -o app1.hex
/AR
:指定提取的范围。(也可以使用/CR
,它可以指定多个范围,/CR:range1[:range2]
)。range格式可以是起始地址和结束地址:addr1-addr2
,也可以是起始地址加长度:addr1,length
。
/s
:后台运行。不启动GUI界面,可以加/eerrorlog.txt
,输出错误日志。
/XI
:指定导出格式为Intel Hex
格式。
-o
:输出文件名称。
提取并转化格式
hexview.exe app.hex /AR:0X200000-0X303404 /s /XN /eerror.log -o app1.hex
作用:提取app.hex
固件中的0x200000-0x203404
,并转换为.bin
格式文件。
/XN
:指定导出格式为data binary
格式。
注意:虽然上述操作能提取成功,但是会将hex中的所有block无缝合并到一起,block之间的空白部分内容会被剔除。因此,为了将HEX格式固件转化为BIN格式固件时,需要先填充空白内容,再输出。
hexview.exe app.hex /AR:0x200000-0x303404 /s /elog.txt /FR:0x200000-0x303404 /FP:FF /XN -o app.bin
/FR
:指定需要填充的范围。多个范围可以用/FR:range1:range2
等分隔。填充时,范围内,只会填充空白部分,非空白部分,不会进行覆盖填充。
/FP
:指定/FR
范围内需要填充部分的填充内容的模式串,为16进制数,/FPAABBCCDD
。
使用此操作将HEX转化为BIN时,可以避免空白部分被删除,解决前述问题。
转化固件为C语言数组
hexview.exe .\StartupBuild.hex /AR:0XFE002888-0XFE002B01 /s /FP:FF /XC -o flashdriver.c
/XC
: 指定输出文件格式为C语言文件。
删除固件中的某段内容
hexview.exe .\StartupBuild.hex /CR:0XFE002B00-0XFE002D7D /s /XI -o StartupBuild.hex
/CR
: 裁减掉范围的内容。通过 :
连接多个地址范围。@TOC