stdme 发表于 2011-6-14 09:34:49

关于FileInstall这个参数的效率问题

我不清楚这个方法后台是怎么写的,但我发现如果写得不好的话启动软件会花费相当长的时间.....

有经验的各位能否告诉我怎样在不写死路径的情况下执行此命令且更高效?

目前我就是这样写的:FileInstall("kbogy-t6K.exe","")

stdme 发表于 2011-6-14 10:01:21

虽然知道这必须有个抽取出文件的过程......{:face (394):}

happytc 发表于 2011-6-14 10:05:31

回复 1# stdme

目标目录必须存在才能调用此函数,不然FileInstall将会失败, 返回 0 并不会创建文件和路径.

stdme 发表于 2011-6-14 11:17:27

回复 3# happytc

我是将文件给它放到同级目录下才不写路径的,因为autoit封装的东西最后我要通过nsis来指定它到底安装在哪,所以不能写死路径...

stdme 发表于 2011-6-14 11:18:00

不过这个抽取速度还能接受吧...

飘云 发表于 2011-6-14 11:53:30

目标目录可以用变量,另外,如果文件大的话,这个函数的工作效率确实有点低,因为它是把编译后exe中包含的文件复制一份出来的,文件大花的时间就多了,不过我用它做了些补丁,差不多30M左右的,运行都很快

stdme 发表于 2011-6-14 12:01:17

回复 6# 飘云

那我想请教下,如果是大文件用什么方法会更合适?

飘云 发表于 2011-6-14 13:22:42

本帖最后由 飘云 于 2011-6-14 13:25 编辑

就au3而言,其实是不合适针对大文件进行操作的,如果要的话,有些取巧的方法,这就涉及到16进制数据的操作,思路类似http://www.autoitx.com/forum.php?mod=viewthread&tid=24818&highlight=%CE%C4%BC%FE%D7%D4%C9%EDcrc32%D0%A3%D1%E9%B5%C4%BD%BB%C1%F7%CC%F9%A1%A3%BB%B6%D3%AD%CC%D6%C2%DB
页: [1]
查看完整版本: 关于FileInstall这个参数的效率问题