不重新编译安装包,实现installshield制作的安装程序文件更新

 

目标:不重新编译安装包,实现installshield制作的安装程序文件更新

环境:IS2009

实现步骤:

1. 从安装目录的.\system下提取iscab.exeISTools.dllMediaBuild40.dll文件,将它们拷贝到自建的文件夹中,例如这里拷贝到d:\test目录。

 

2. 将要更改的安装包拷贝也拷贝到d:\test目录

 

进入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"

 

 

 

 

 

 

 

3. 通过各种命令行实现增加,删除,替换,解压更新文件到原始安装包里

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/sabrinahuang/archive/2011/01/10/1932043.html

Award-winning安装授权认证的解决方案   根据IBM*的研究,28% 的应用程序错误都与安装和配置错误有关。但是,许多软件生产商仍然继续依赖国产或过时的安装,   而这些安装都是针对过时的技术标准进行优化的。   只有使用最新的工具,才能避免安装错误并改善最终用户体验。高质量的安装可产生更高质量的产品。通过确保产品提供最大可能的初始体验,您将不仅可令客户拍手叫绝,还可降低支持费用和加快产品上市时间。   installshield 是为程序打包用的.   一个程序除了.exe以外,常常还会需要到其他很多外部资源,如控件(.ocx文件),图片,.dll文件等。这样的程序发布起来很不方便,程序打包就是将这些所有资源(.exe,控件,图片等)放到一个安装程序(也是.exe文件)中,这样用户只要下载并且运行这个安装程序,就可让安装程序释放目标程序及所有这些资源,非常方便   InstallShield® 拥有近 20 年的经验,现在已经成为 Windows Installer 和 InstallScript 安装方面的行业标准。InstallShield 2009 可以帮助所有规模的软件生产商创建高质量的安装,并使其可以配置数据库服务器、Web 服务以及移动设备。 缩短开发时间   InstallShield 功能强大的 IDE 以及其自动化向导、模板和预构建的对象可快速实现常规安装任务并极大地提高效率,无论安装的复杂程度如何。   新的 InstallShield Best Practices 确认套件可以避免常见的安装问题,让您真正感受 InstallShield 的专业技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值