Inno Setup
使用Inno技术制成的程序安装包可以使用/SILENT 和 /VERYSILENT参数进行全自动安装(我不知道这两个参数有什么分别,因为它们实现的功能看上去是一样的)。
setup.exe /VERYSILENT
不过我们这里有个小问题,你要处理这个询问你是否进行安装的对话框:
幸好我们可以通过使用一个参数跳过这个对话框:
setup.exe /VERYSILENT /SP-
不过这里还有一个问题,有些利用Inno技术做作的安装包会在程序安装完毕后自动运行所安装的程序,例如ISOBuster。不过我们可以使用一个叫做PSKill 的工具杀死相关的进程,这个软件是SysInternals公司开发的,你可以在下载页面下载到。
以下是一个可以用于批处理文件的命令的示例:
ECHO.
ECHO Copying PSKill utility...
COPY "%systemdrive%\Install\Tools\pskill.exe" "%systemroot%\"
ECHO.
ECHO Installing ISOBuster 1.4
ECHO Please wait...
start /wait %systemdrive%\install\Applications\ISOBuster\IsoBuster14.exe /VERYSILENT /SP-
ECHO.
ECHO Killing ISOBuster.exe process
PSKill ISObuster
ECHO.
我怎么知道哪个安装程序是用Inno 技术打包的?
本页上方的截图就是一个典型的Inno安装包的运行界面,而下图也是(在窗口标题栏左侧的图标上点击鼠标左键,然后再探出菜单上点击“About Setup”也可以看见安装类型)。
Installshield 应用程序
要使用自动安装的方式安装用InstallShield技术打包的程序,你首先要创建一个setup.iss文件。
1. 首先在一台现成的电脑上的命令行窗口中使用 -R 参数运行安装程序
例如:
Setup.exe -R
2.接着会显示常见的安装屏幕,并且询问你一些问题,例如要安装的目录等。有一点是很重要的,在安装结束后你不能选择“立刻重启动计算机”的选项。如果你选了,在批处理文件中的其他命令就会因为计算机重启动而无法执行。
3. 在安装程序运行完毕后,打开你的C:\Windows (或者C:\WINNT)目录,然后找到setup.iss 文件,把这个文件和你将要自动安装的程序保存在同一个目录中。
4. 用以下命令进行自动安装:
start /wait %systemdrive%\install\Application\Application_name\Setup.exe -s -f1"%systemdrive%\install\Applications\Application_name\setup.iss"
以上的命令是一整行的,他们之间没有多余的空格。
5. 对所有准备进行自动安装,并且使用了InstallShield技术打包的程序重复上面的步骤,获得相应的setup.iss文件。
我怎么知道哪个程序是使用InstallShield技术打包的?
利用这种记事打包的文件,大部分都是可以被压缩软件解压缩的,安装文件的属性对话框中应该有“InstallShield (R) Setup Launcher”或者其他类似的字样。最后,如果你在保存安装文件的文件夹中看到了一个作为范例的setup.iss文件,那么毫无疑问这是用InstallShield打包了。