昨天ninja911给我留言说用我去年上传的ARF解包器提取《疯狂牧场》的资源出现软件卡死、CPU占用100%的现象。
今天查了一下,发现是/捣的鬼。因为向TreeView添加节点的时候我只根据/分析目录结构,所以在解《疯狂牧场》这个使用/分割相对路径的ARF文件时就出错了。
解决的办法很简单,把文件路径中的/都转化成/就可以了。
此外,这次还发现了Delphi中ForceDirectories函数的一个bug.
假设’D:/test/arf’是预先创建好的目录,此目录下无任何文件或文件夹。
执行ForceDirectories(‘D:/test/arf/Cutscenes/Common’);成功
执行ForceDirectories(‘D:/test/arf/TrophyRoom’);成功
执行ForceDirectories(‘D:/test/arf/Game/Characters’);失败
执行ForceDirectories(‘D:/test/arf/Config/Curves/Cutscene01’);失败
基本可以确定同样是没有处理/造成了。
修改过的ARF解包器可以从我 盘的杂货铺中下载。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!