常见打包工具的静默安装
下面以不同的安装方式进行讨论:
一、 Microsoft Windows Installer
如果某个软件是用Windows Installer打包的,那你就应该能在文件夹中看到*.msi文件。
这是最典型的特征,这些文件通常可以使用 /QB和 /QN参数进行自动安装。。
/qb 会在窗口中显示一个基本的安装进程
/qn 参数则不会显示任何窗口,直接在后台自动安装
为了阻止某些程序安装成功后自动重启动(例如Kerio Personal Firewall 4),你可以在 /qn 或者 /qb参数后使用REBOOT=Suppress标记,例如:
如安装虚拟光驱 DaemonTools:msiexec /i dtools.msi /qb REBOOT=SUPPRESS
二、 Windows 补丁包
有两种情况,一种是类似IE增量补丁包的那种安装文件,要使之静默安装,只需要在执行文件后加上 /q:a /r:n 参数即可;一种是 Windows 常用的补丁文件,一般情况下加上 /U /N /Z 即可实现静默安装。
(对于新的系统补丁,也可使用 /passive /norestart)。这通用大部分情况,但某些特定的补丁不能用此法进行静默安装。
三、InstallShield
a.要使用静默安装的方式安装用InstallShield技术打包的程序,首先要在现有的操作系统中创建一个setup.iss文件。
在命令行窗口中使用 -R 参数(大小写敏感)运行安装程序。
例如:Setup.exe -R
b. 接着会显示常见的安装屏幕,并且询问你一些问题,例如要安装的目录等有一点是很重要的,在安装结束后你不能选择“立刻重启动计算机”的选项。如果你选了,在批处理文件中的其他命令就会因为计算机重启动而无法执行。
c. 在安装程序运行完毕后,打开你的C:\Windows(或者C:\WINNT)目录,然后找到setup.iss文件,把这个文件和你将要静默安装的程序setup.exe保存在同一个目录中
d. 用以下命令进行静默安装:setup.exe -s [-sms]
我怎么知道哪个程序是使用InstallShield技术打包的?
大部分这类程序的安装文件都可以被压缩软件解压缩,安装文件setup.exe的属性对话框中应该有“InstallShield (R) Setup Launcher”或者其他类似的字样。
最后,如果你在保存安装文件的文件夹中看到了一个setup.iss文件,那么毫无疑问这是用InstallShield打包了!
四、InstallShield with MSI
InstallShield with MSI 制作的安装文件,请使用类似:setup.exe /s /v”/qb” 来安装
五、WISE Installer
用WISE技术打包的软件在安装的时候可以选择使用 /s参数进行自动安装:setup.exe /s
六、Inno Setup
Inno Setup 制作的安装文件,请使用:setup.exe /sp- /silent /norestart
我怎么知道哪个安装程序是用Inno 技术打包的?
这种软件安装时第一个界面一般如下图所示
在窗口标题栏左侧的图标上点击鼠标左键,然后再探出菜单上点击“About Setup”可以看见安装类型[attach]138[/attach]
七、NullSoft Installation System
使用 NSIS (NullSoft Installation System) 制作的安装文件,可用 /S (注意大写)来进行静默安装。示例:setup.exe /S
使用NSIS 打包的安装文件可以用 /S参数进行自动安装(“S”是大小写敏感的):
Setup.exe /S
你也可以用 /D参数选择将要安装的目标分区和文件夹:
Setup.exe /S /D=E:\Software\CDex
像Winamp 和CDex这类的软件都会在安装结束后显示一个确认屏幕(CDex)或者一个设置文件关联方式的结束安装屏幕(Winamp)
我怎么知道哪个程序是使用NSIS技术打包的?
很多用NSIS打包的程序在安装的时候都有类似这样的窗口,例如Winamp 和CDex:[attach]139[/attach]