一直以來,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的那個版本里面會自帶該頭文件和示例。