主要参考
5 r3 A6 v* f+ t8 N# ~" F/ Thttps://www.chinaavg.com/read.php?tid=14254
# G) [5 `3 R3 W! Q: }https://www.chinaavg.com/read.php?tid=14192% d0 C. h9 K8 ^ X3 b
! p( O; t' O. F1 e+ X: N) t4 e1 U辅助参考- S: d' ?2 r1 |
https://www.chinaavg.com/read.php?tid=124104 L& `! Z( u$ g5 |* @
https://www.chinaavg.com/read.php?tid=124112 |! z$ `# G, e4 k# k: d( X
5 h! C+ o% Y; k4 |/ d
在上文1,2中记述了南希16,17的基本文件格式,文件头部存放偏移量和文件长度的位置,以及分析出这个文件格式的方法。
) U. X/ e) ^ o" i/ `4 K7 _7 P( ]
8 T% f& I) P$ O# @3 O本工具就是要在搞清楚文件格式的基础上,对包文件进行解包,然后对修改后的包文件再打包。
5 V9 O: Y. ?- ^/ k注意要修改每个文件的偏移量以及文件的长度值。
7 A, [/ z; `, d; t* _$ E! m6 i' ~9 F, e* h% s0 ]
' @, R& \1 i9 E A4 {) }% m/ O
基本设计如下
# z/ p L& {' P: e2 L9 u4 ^
; o$ f% K3 b$ s. j. }8 @nd16ext.exe 包文件路径名 解包目录% U1 y6 U$ o" G" o6 i2 x' e$ R
nd16join.exe 原包文件路径名 修改后的单个文件存放目录$ U& w/ v X8 U. `" m4 N) G- `
+ P. H8 ]& F8 [6 O! Qnd16ext.exe 把包文件解压到解包目录,在解包目录不指定的情况下,解压到当前目录. k2 A+ g8 ~+ V$ C1 @7 f/ L |
nd16join.exe 按照原包文件的文件存放顺序,把单个文件存放目录中的文件打包,打包后存放到当前目录下。文件名加上 _new ,如果已存在就覆盖。 |