一直以来,Inno的做者都没有提供打包隐藏文件和系统文件的功能。html
可是,若是咱们作批量打包,批量封装的时候,总会须要这样的功能,由于咱们不能保证没有隐藏文件。app
若是有这些文件,可是没有被打包进去,相信后果你们都懂的。函数
此次我用ISPP功能作了这么一个头文件,不但能够打包隐藏文件,还能保留属性。(支持 系统 和 隐藏)工具
为了让你们用起来顺手,我作了一个最简单的用法,不过,若是你要作的包含不少文件夹,那么请看:Example2.iss测试
其中InstFiles.ish放到inno setup的Examples文件夹中code
1 ; -- Example1.iss --
htm
2; Demonstrates use InstFiles.ish.
3; Author : KngStr
4; WebSite : http://www.kngstr.com/archive/inno/ish/instfiles/
5
6#include "InstFiles.ish"
7
8[Setup]
9AppName=My Program
10AppVersion=1.5
11DefaultDirName={pf}\My Program
12DefaultGroupName=My Program
13UninstallDisplayIcon={app}\MyProg.exe
14Compression=lzma2
15SolidCompression=yes
16OutputDir=userdocs:Inno Setup Examples Output
17CreateUninstallRegKey=no
18Uninstallable=no
19
20#expr InstFiles("D:\Users", "*.*")
21
若是你须要这个功能,能够下载最后的压缩包,包含了两个示例文件,一个简单的就是贴出来的这个,另一个是复杂的用法。
blog
测试数据:
用时:1分钟 文件夹:343 文件:12581 内存占用: 37M. 包含隐藏和系统文件
用时:1小时 文件夹:1491 文件:432817 内存占用:900M. 包含隐藏和系统文件
内存
此次作这个头文件,用了我一个星期的时间,由于ISPP限制比较多。作了不少的方案都不合我内心的想法。字符串
因此,我发布的这个头文件使用了以下的方法:
做者:cntrump
FileToIss 1.0.0.1 [自动搜索文件并写入ISS脚本] - http://bbs.hanzify.org/read-htm-tid-66615.html
LnkToIss 1.0.0.1 自动提取快捷方式信息到ISS脚本文件 - http://bbs.hanzify.org/read-htm-tid-66617.html
固然,这个只是权益之计,毕竟,ISPP尚未什么好的字符串列表。
若是,你有更好的方案,能够联系我,很是感谢。
另外,若是官方出现合适的功能以后,我也会改写本函数的。
PS: 若是你使用我作的 Inno集成版 的话,就无需下载的了,由于5.5.2的那个版本里面会自带该头文件和示例。