- 注册时间
- 2005-8-2
- 最后登录
- 1970-1-1
|
花了三天时间,终于把lava1.0的伪指令基本研究清楚了,呵呵
哪天有时间再把研究成果发上来,其实很多人都有的,只是没发而已。
首先拿E路客的文件夹管理开刀,因为我对它的文件排列很感兴趣。
其实原理很简单
char fp;
char a[16384];
ChDir("/LAVA");
fp=fopen("","r");
fread(a,1,16384,fp);
fclose(fp);
数组a中存放的就是LAVA目录中的文件信息
格式如下
a[0]-a[1] =0x00 大小2H
a[2]-a[15] =0xff 大小(10H-2H)
a[16]-a[17] 第一个文件的文件号 大小2H
a[18]-a[31] 第一个文件的文件名(当文件名<14bytes时以00结束,=14bytes时末尾没有00) 大小(10H-2H)
a[32]-a[33] 第二个文件的文件号 大小2H
a[34]-a[55] 第二个文件的文件名 大小(10H-2H)
......
保存也很简单
fp=fopen("","wb");
fwrite(a,1,16384,fp);
fclose(fp);
只要对数组a进行操作就行了,但是只能对子目录进行操作,无法对根目录进行操作!
如果想用r键进行重命名的话,就把文件的7ccH处的0x0d改成0x72
如果想用输入键进行保存的话,就把文件的8e4H处的0x73改成0x0d |
|