主要参考: I( \4 y u: U: H* C, H4 ]
https://www.chinaavg.com/read.php?tid=14254
4 `3 u3 |& a" q( [* ]7 d/ ghttps://www.chinaavg.com/read.php?tid=14192
/ s) U7 g# c6 ^) A
( o( E) s7 _7 B w辅助参考' @: x$ d- s* M" n" J
https://www.chinaavg.com/read.php?tid=12410 A+ |% C. h! N3 E5 L. m9 E- G) V
https://www.chinaavg.com/read.php?tid=12411
7 X- u) L. f, A
( b( A$ [6 }; ?( c# N7 J% r3 i# Q" M在上文1,2中记述了南希16,17的基本文件格式,文件头部存放偏移量和文件长度的位置,以及分析出这个文件格式的方法。
% m; F- y4 o- w8 t/ u& X- r; e5 ]: a! j \" R2 E" i/ V: y
本工具就是要在搞清楚文件格式的基础上,对包文件进行解包,然后对修改后的包文件再打包。
0 r* P! x N! O- H) U1 B$ ]: i注意要修改每个文件的偏移量以及文件的长度值。
+ s( R! \! c) ^6 t! v" l, B- i; s ]; s# m* k
# z7 f% `3 j; X9 G! I
基本设计如下; R; |. e8 m% x# y1 p0 d7 t
( N6 U- f5 E. ?; h# t6 L) `
nd16ext.exe 包文件路径名 解包目录
0 c* [' s* ]: @: rnd16join.exe 原包文件路径名 修改后的单个文件存放目录( T; ?( J4 K0 _
* y! R8 j5 r w. Dnd16ext.exe 把包文件解压到解包目录,在解包目录不指定的情况下,解压到当前目录: @' A+ b/ s8 u0 l
nd16join.exe 按照原包文件的文件存放顺序,把单个文件存放目录中的文件打包,打包后存放到当前目录下。文件名加上 _new ,如果已存在就覆盖。 |