不更新安装包,实现文件更新 奕婷特许授权发布
實現installshield制作的安裝程序文件更新
目標:不重新編譯安裝包,實現installshield制作的安裝程序文件更新
環境:IS2009
實現步驟:
1. 從安裝目錄的.\system下提取iscab.exe,ISTools.dll,MediaBuild40.dll文件,將它們拷貝到自建的文件夾中,例如這里拷貝到d:\test目錄。
2. 將要更改的安裝包拷貝也拷貝到d:\test目錄
3. 進入cmd窗口,,輸入d:,,再輸入cd test,進入d:\test目錄。之后使用命令行iscab data1.cab -lx -icab.ini提取安裝包結構信息輸出到 cab.ini 文件,大致包含頭部描述段[ISCAB Info]和文件描述段[Program Files in TARGETDIR]兩部分格式:
[ISCAB Info]
Product=ISCAB
Version=2.0
[<Support>English Files]
File1="_IsRes.dll"
[<Engine>Engine Files]
File1="corecomp.ini"
[<Support>Chinese (Simplified) OS Independent Files]
File1="license.txt"
File2="vssver.scc"
[<Support>Non-SelfRegistering]
File1="isrt.dll"
File2="default.pal"
[<Support>English OS Independent Files]
File1="license.txt"
[<Support>Language Independent Intel 32 Files]
[Program Files in TARGETDIR]
File1="MoticTools.dll"
File2="MoticTrace.exe"
File3="Software Help Request.xls"
[<Support>Script]
File1="setup.inx"
[<Engine>ScriptEngine]
File1="iscript.dll"
[<Support>Chinese (Simplified) Intel 32 Files]
[<Support>English Intel 32 Files]
[<Disk1>Disk1 Files(1)]
File1="layout.bin"
File2="data1.hdr"
File3="data1.cab"
[<Disk1>Disk1 Files(2)]
File1="Setup.exe"
File2="Setup.ini"
[<Disk1>Disk1 Files(3)]
File1="setup.inx"
[<Support>Chinese (Simplified) String Tables]
File1="value.shl"
File2="vssver.scc"
[<Support>English String Tables]
File1="value.shl"
[<Support>Language Independent OS Independent Files]
[<Engine>SelfRegistering]
File1="ctor.dll"
File2="objectps.dll"
File3="iuser.dll"
[<Support>Chinese (Simplified) Files]
File1="_IsRes.dll"
[<Engine>Kernel Placeholder]
File1="iKernel.exe"
4. 通過各種命令行實現增加,刪除,替換,解壓更新文件到原始安裝包里
1) 增加文件:將要增加的文件放置在d:\test目錄,編輯導出的 cab.ini 文件,僅保留頭部描述段([iscab info])和要加入的文件描述段(注意,文件所在的組描述應保留,如[Public Files in TARGERDIR]),將編輯后的文件另存為 add.ini,在cmd窗口中使用命令行iscab data1.cab -a -iadd.ini,實現增加文件進原始安裝包。
范例:
增加"moticdog.dll"文件,將cab,ini文件改成如下:
[ISCAB Info]
Product=ISCAB
Version=2.0
[Program Files in TARGETDIR]
File1="MoticTools.dll"
File2="MoticTrace.exe"
File3="Software Help Request.xls"
File4=" moticdog.dll "
在cmd窗口中使用命令行iscab data1.cab -a -iadd.ini,這時雙擊安裝包安裝軟件,在安裝目錄下就可以看到增加了"moticdog.dl這個文件。
2) 移除文件: 編輯導出的 cab.ini 文件,僅保留頭部描述段([iscab info])和要刪除的文件描述段(注意,文件所在的組描述應保留,如[Public Files in TARGERDIR])將編輯后的文件另存為 del.ini,在cmd窗口中使用命令行iscab data1.cab -r -idel.ini,實現將始安裝包文件刪除。
范例:
刪除File3="Software Help Request.xls"文件,將cab,ini文件改成如下:
[ISCAB Info]
Product=ISCAB
Version=2.0
[Program Files in TARGETDIR]
File3="Software Help Request.xls"
在cmd窗口中使用命令行iscab data1.cab -r -idel.ini,這時雙擊安裝包安裝軟件,在安裝目錄下就可以看到刪除Software Help Request.xls文件
轉載于:https://www.cnblogs.com/Cindy_weiwei/archive/2009/09/06/1561236.html
總結
以上是生活随笔為你收集整理的不更新安装包,实现文件更新 奕婷特许授权发布的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: iframe去掉滚动条
- 下一篇: oracle左右连接的另外表示方法
