找回密码
 点一下
查看: 4016|回复: 8

stormlib的问题

[复制链接]
发表于 2007-12-4 15:47:32 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2007-12-4 16:45:27 | 显示全部楼层
用stormlib了?实际上他没有sfmpq好用......

至于压缩问题么,flag参数直接就添错了......

PS:好久没碰WAR3了,还是比较怀念以前的日子,难得回来看看
最近很痛苦,每天受煎熬......
回复

使用道具 举报

 楼主| 发表于 2007-12-6 14:44:15 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2007-12-6 20:38:59 | 显示全部楼层
试试释放个空MPQ再加东西进去
嘿嘿
回复

使用道具 举报

发表于 2007-12-6 21:08:43 | 显示全部楼层
我用SF的时候怎么没这问题...
回复

使用道具 举报

发表于 2007-12-6 22:25:27 | 显示全部楼层
sfmpq.dll确实不错,我测试了一下,建立MPQ文件,添加等操作都成功了啊,不知道你哪里有问题,我是E,给你代码也没用。。。。

===
hMPQ = MpqOpenArchiveForUpdate (全路径文件名, 0, 哈希表大小) '新建MPQ

MpqAddFileToArchive (hMPQ, 原路径, 路径, 0) '添加文件

MpqCompactArchive (hMPQ) '重新压缩

MpqCloseUpdatedArchive (hMPQ, 0)
===
其他的操作一样简单的。。。。
注意API的声明。。。。


.版本 2

.DLL命令 MpqOpenArchiveForUpdate, 整数型, "SFmpq.dll"
    .参数 lpFileName, 文本型
    .参数 dwFlags, 整数型
    .参数 dwMaximumFilesInArchive, 整数型

.版本 2

.DLL命令 MpqAddFileToArchive, 逻辑型, "SFmpq.dll"
    .参数 hMPQ, 整数型
    .参数 lpSourceFileName, 文本型
    .参数 lpDestFileName, 文本型
    .参数 dwFlags, 整数型
........
回复

使用道具 举报

发表于 2007-12-6 22:29:45 | 显示全部楼层
已确定MpqOpenArchiveForUpdate( ) 的第2个参数如果是1就是新建MPQ文件,如果你添加了新的文件,重压缩后就会自动保存新添加的文件到内部列表文件(listfile),这个文件会自动创建。

就是不知道sfmpq.dll里哪个DLL函数是定义整个MPQ文件的块大小的。。。。
MpqCompactArchive (hMPQ) '重新压缩
这个函数只有一个参数。。。。。难道块大小根据添加文件时选择的压缩方式自动计算的吗??
回复

使用道具 举报

 楼主| 发表于 2007-12-7 12:38:39 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2007-12-7 14:38:15 | 显示全部楼层
呵呵,奇怪的问题总出现在门身上。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-22 01:21 , Processed in 0.089290 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表