- 积分
- 68
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 qwertyui 于 2010-6-25 14:48 编辑
主要是看lovemarsh 把6688的数据库更新了,见
http://www.0110.cn/viewthread.php?tid=440139extra=page%3D1
了解了知识传播的力量,还有就是坛子上大家互助的精神,所以再写一篇区号秀3.2数据库不连续存放教程,尽量写得详细点
区号秀数据库不连续存放办法:以lovemarsh的数据库为例
用winhex或ultraedit打开做好的数据库,在20h处为号码开始的地址(4位),现此数为0x1498,到数据库0x1498处查看,可看到以ffffffff开头的字符,此处为顺序码表,共0x64h个ffffffff,实际是手机号码第23位的地址指针(4位)顺序排列表,对应号码取数00-99,为0xffffffff,表示号码没加入,如0x1498处对应手机号码100xxxx,其值为0xffffffff,第1个非ffffffff的地址是0x1510h,(0x1510-0x1498)/4=0x1e,即为十进制的30,故对应手机号码为130xxxx,其值为0x00001628,则表明0x1628处开始到是130xxxx号码的城市码了。
下载 (115.89 KB)
半小时前
将城市码不连续存放,修改此处地址指向即可实现数据的不连续存放(城市码是最长的,数据库前面的结构基本都是一致的,没变化)
我们看0x15f0开始处,此地数据为38 f7 01 00 34 06 02 00,表明186号段的开始在0x01f738处,结尾到0x20633处。187号段的开始在0x020634,看到这个0x020634,可以想到我们的数据库已经超128k(0x20000)了,所以计划将187开始的部分都放到另外一个不连续的地址去。以x618为例,数据第一段从320000开始,128k空间,第二段从7e8000开始,31k空间,将文件裁成2个,第一个大小为0x1f738,余下的为另一个文件。修改第一个文件中0x15f0处开始的指向地址为(0x7e8000-0x320000),0x15f4处为(0x7e8000-0x320000+0x020634-0x01f738),余下类推直到无号码(0xffffffff),这样即完成数据库的不连续存放。
将两文件刷机即可。 |
评分
-
查看全部评分
|