Installshield静默安装宝典 奕婷特许授权发布
上一篇: Installshield设置feature为必须选中状态,即必定安装状态
本文经原作者奕婷特许授权于海洋女神发布,转载请务必注明出处与链接;原作者奕婷和海洋女神保留对该文的一切法律许可下的权益;需要发布在盈利性报刊、网站等请与原作者奕婷或海洋女神联系。
序言
这份文档并非本人所写,而是一位朋友在最近做了安装包以后总结出的教程,在此非常感谢这位朋友奕婷小姐的无私分享。做一个工程也需要花不少时间,而写一篇文章甚至要花更多的时间,对于别人的劳动,如果每一个人都能够给予尊重,那么也许收获得会更多。
-----------------------------------------------分割线---------------------------------------------------------
应广大群友的要求,我整理了一下自己静默安装的心得,希望对大家有帮助!
静默安装说白了就是可以实现在无人值守的状态下,实现程序的自动安装。那怎么样可以达到自动安装的目的呢,首先必须要有一个录制文件,将我们手动执行的部分全部录制下来,然后在无人的状态下通过执行这个录制文件来达到目的。所以可以分两部分来介绍静默安装的实现:
1.制作录制文件。制作录制文件很简单,在做好的安装包的基础上,将安装包中的setup.exe文件拖动到“运行”中,然后输入命令行参数“-r"(顾名思意r就是record),然后一步一步手动安装完程序。这时在C:"Windows (或者C:"WINNT)目录下会产生一个setup.iss文件,这个文件就是我们需要的录制文件。
2.执行录制文件。将产生的录制文件拷贝到安装包与setup.exe同级的目录下。
1)如果只是要在本机简单的进行静默安装,同样将安装包中的setup.exe文件拖动到“运行”中,然后输入命令行参数“-s",这时你可以看到鼠标有闪烁两下,表示静默安装执行成功。
2)如果有人需求跟我的一样,是要在一个安装包中调用另一个安装包,且调用过程必须静默安装方式,那就通过LaunchAppAndWait (szProgram, szCmdLine, nOptions)函数进行调用,然后加入命令行参数,具体解释一下,
参数:
szProgram
指定要被运行的应用程序的文件名。这里就直接输入被调用安装包应用程序的名称。
指定传递给运行的应用程序的命令行参数。这里命令行输入“-r"
nOptions
可以输入很多参数,比如隐藏窗口,等待/不等待.....,具体大家可以参见Help中的说明根据需要输入自己需要参数。
总的来说静默安装原理基本就这些,可是在实际使用的过程中,我还有几点从遇到的问题中得到的经验想跟大家分享。
1.在执行静默安装的过程,会默认在安装包中产生一个setup.log日志文件,如果你的安装包是要刻录光盘,由于光盘只读的,没有写入权限,会导致这个日志文件没有办法成功创建会导致静默安装失败。这个问题当时困扰了很久,后来我发现可以通过输入参数"-f2”,然后在后面输入有权限创建的位置,,比如 /f2”C:"temp"Setup.log”。这样就避开了权限问题。
2.解决了以上权限问题,我想应该还有一个参数可以执行setup.iss录制文件创建的位置,果然,同样可以通过参数-f1指定位置,比如Setup.exe /s /f1”C:"temp"setup.iss”,这样录制文件就产生在C:"temp目录下。
3.当然如果你需要将setup.iss和setup.log文件命名成自己喜欢的名字,还可以在输入参数-f1,-f2的时候,顺便将名字改写下,比如Setup.exe /s /f1”C:"temp"example.iss” /f2”C:"temp"example.log”。