一些常用软件的静默安装参数(nsis,msi,InstallShield,Inno)
打包的时候,经常需要安装一些其它的环境库,而又不想让用户繁锁的去选择,这时就需要静默安装,而不同的文件所加的参数了不一致,比如VS的环境库vcredist_x86.exe(这是32位的环境库)后面加/q即可完成静默安装,而NSIS打包的文件使用/q是不行的,查了相关的资料得使用/S(这里要大写),其它格式的文件参考下面的转载内容:
--------------------------------------------------华丽的分割线-----------------------------------------------
有时我们在安装程序的时候,希望是静默安装的,不显示下一步下一步,这编访问来教大家如何来操作,现在常用的制作安装程序的软件有, Microsoft Windows Installer , Windows 补丁包 , InstallShield , InstallShield with MSI , WISE Installer , Inno Setup , NullSoft Installation System 等。
软件的安装采取全自动或半自动的方式进行。
一、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
下载地址: http://www.cr173.com/soft/6486.html
1、要使用静默安装的方式安装用InstallShield技术打包的程序,首先要在现有的操作系统中创建一个setup.iss文件。在命令行窗口中使用 -R 参数(大小写敏感)运行安装程序。
例如:Setup.exe -R
2、接着会显示常见的安装屏幕,并且询问你一些问题,例如要安装的目录等有一点是很重要的,在安装结束后你不能选择“立刻重启动计算机”的选项。如果你选了,在批处理文件中的其他命令就会因为计算机重启动而无法执行。
3、在安装程序运行完毕后,打开你的 C:\Windows(或者C:\WINNT)目录,然后找到 setup.iss 文件,把这个文件和你将要静默安装的程序 setup.exe 保存在同一个目录中。
4、 用以下命令进行静默安装: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 参数进行自动安装。
六、Inno Setup 下载地址: http://www.cr173.com/soft/8158.html
Inno Setup 制作的安装文 件,请使用:setup.exe /sp- /silent /norestart
说明:怎么知道哪个安装程序是用Inno 技术打包的?
这种软件在安装时出现的第一个界面,在窗口标题栏左侧的图标上点击鼠标左键,然后再探出菜单上点击“About Setup”可以看见安装类型。
七、NullSoft Installation System http://www.cr173.com/soft/2235.html
使用 NSIS(NullSoft Installation System)制作的安装文件,可用 /S (注意大写)来进行静默安装(“S”是大小写敏感的)。
例如:Setup.exe /S
也可以用 /D参数选择将要安装的目标分区和文件夹:
例如:Setup.exe /S /D=E:\Software\QQ2007
像Winamp 和CDex这类的软件都会在安装结束后显示一个确认屏幕(CDex)或者一个设置文件关联方式的结束安装屏幕(Winamp)
说明:怎么知道哪个程序是使用NSIS技术打包的?
很多用NSIS打包的程序在安装的时候都有类似的窗口,例如Winamp 和CDex。
八、Wise Installation Professional
制作的安装文件,可用 /silent 参数进行静默安装
无人值守安装光盘最有魅力的地方之一
就是在安装过程中可以静默安装好预先设计集成的一些常用软件,安装结束以后软件就已经可以使用
但是很多朋友发现每个软件以及系统补丁,它们的静默安装参数是不一样的
在本文就和广大爱好者一起研究一下几种常见软件封包形式的静默安装方式
如有遗漏和错误之处,请指出,大家互相交流!
常用的软件封包形式主要有以下几个形式
Inno Setup
InstallShield
NSIS
Microsoft Windows Installer
WISE
QUOTE:
一.Inno Setup
使用Inno技术制成的程序安装包可以使用/SILENT 和 /VERYSILENT参数进行静默安装
我不知道这两个参数有什么分别,因为它们实现的功能看上去是一样的
setup.exe /VERYSILENT
你会看到一个对话框,询问你是否打算继续安装:
我们可以通过使用一个参数跳过这个对话框:
setup.exe /VERYSILENT /SP-
有些利用Inno 技术做作的安装包会在程序安装完毕后自动运行所安装的程序,例如ISOBuster
不过我们可以使用一个叫做Taskkill的系统自带工具杀死相关的进程。
以下是一个可以用于批处理文件安装由Inno打包的软件的命令的示例:
ECHO.
ECHO 正在安装ISOBuster 1.4
ECHO 请稍候...
start /wait %systemdrive%installApplicationsISOBusterIsoBuster14.exe /VERYSILENT /SP-
ECHO.
ECHO Killing ISOBuster.exe process
taskkill.exe /F /IM isobuster.exe
ECHO.
我怎么知道哪个安装程序是用Inno 技术打包的?
这种软件安装时第一个界面一般如下图所示
在窗口标题栏左侧的图标上点击鼠标左键
然后再探出菜单上点击“About Setup”也可以看见安装类型
更多使用Inno技术打包的软件可用的参数可以在下面看到:
E文好的朋友可以仔细研究研究
With the Inno Setup Extentions in use the following command line switches become available:
SP-
Disables the This will install... Do you wish to continue? prompt at the beginning of Setup. Of course, this will have no
effect if the DisableStartupPrompt [Setup] section directive was set to yes.
/SILENT, /VERYSILENT
Instructs Setup to be silent or very silent. When Setup is silent the wizard and the background window are not displayed but
the installation progress window is. When a setup is very silent this installation progress window is not displayed.
Everything else is normal so for example error messages during installation are displayed and the startup prompt is (if you
haven''t disabled it with DisableStartupPrompt or the ''/SP-'' command line option explained above)
If a restart is necessary and the ''/NORESTART'' command isn''t used (see below) and Setup is silent, it will display a
Reboot now? messagebox. If it''s very silent it will reboot without asking.
/NORESTART
Instructs Setup not to reboot even if it''s necessary.
/LOADINF="filename"
Instructs Setup to load the settings from the specified file after having checked the command line. This file can be prepared
using the ''/SAVEINF='' command as explained below.
/SAVEINF="filename"
Instructs Setup to save installation settings to the specified file.
/DIR="x:dirname"
Overrides the default directory name displayed on the Select Destination Directory wizard page. A fully qualified pathname
must be specified. If the [Setup] section directive DisableDirPage was set to yes, this command line parameter is ignored.
/GROUP="folder name"
Overrides the default folder name displayed on the Select Start Menu Folder wizard page. If the [Setup] section directive
DisableProgramGroupPage was set to yes, this command line parameter is ignored.
/NOICONS
Instructs Setup to initially disable the Don''t create any icons check box on the Select Start Menu Folder wizard page.
/COMPONENTS="comma separated list of component names"
Overrides the default components settings. Using this command line parameter causes Setup to automatically select a custom
type.
QUOTE:
二.InstallShield
要使用静默安装的方式安装用InstallShield技术打包的程序
你首先要在现有的操作系统中创建一个setup.iss文件。
1. 在命令行窗口中使用 -R 参数(大小写敏感)运行安装程序。
例如:
Setup.exe -R
2. 接着会显示常见的安装屏幕,并且询问你一些问题,例如要安装的目录等
有一点是很重要的,在安装结束后你不能选择“立刻重启动计算机”的选项
如果你选了,在批处理文件中的其他命令就会因为计算机重启动而无法执行
3. 在安装程序运行完毕后,打开你的C:Windows (或者C:WINNT)目录
然后找到setup.iss文件,把这个文件和你将要静默安装的程序setup.exe保存在同一个目录中
4. 用以下命令进行静默安装:
start /wait %systemdrive%installApplicationApplication_nameSetup.exe -s
5. 对所有准备进行静默安装,并且使用了InstallShield技术打包的程序重复上面的步骤操作
技术难点:从光盘上的RunOnceEx中安装用Installshield技术打包的程序
如果从光盘上直接执行RunOnceEx,用Installshield打包的应用程序安装将会失败
除非你指定了用于保存日至文件的位置
下面就有一个示例,你可以将这个例子用于你自己的程序的安装(粗体字部分看仔细了):
REG ADD %KEY%% /VE /D "Kerio Personal Firewall 2.1.5" /f
REG ADD %KEY%% /V 1 /D "%CDROM%appsKPFSetup.exe -s -f2"%systemdrive%kerio.log"" /f
然后你可以用一个cleanup.cmd文件删除kerio.log文件
DEL "%systemroot%kerio.log"
我怎么知道哪个程序是使用InstallShield技术打包的?
大部分这类程序的安装文件都可以被压缩软件解压缩,安装文件setup.exe的属性对话框中应该有“InstallShield (R) Setup Launcher”或者
其他类似的字样。
最后,如果你在保存安装文件的文件夹中看到了一个setup.iss文件,
那么毫无疑问这是用InstallShield打包了!
QUOTE:
三. Nullsoft SuperPiMP Install System (NSIS)
使用NSIS 打包的安装文件可以用 /S参数进行自动安装(“S”是大小写敏感的):
Setup.exe /S
你也可以用 /D参数选择将要安装的目标分区和文件夹:
Setup.exe /S /D=E:SoftwareCDex
像Winamp 和CDex这类的软件都会在安装结束后显示一个确认屏幕(CDex)
或者一个设置文件关联方式的结束安装屏幕(Winamp)
我还不知道怎样跳过这一步,但是这个屏幕对批处理文件的继续执行不会有任何影响
我怎么知道哪个程序是使用NSIS技术打包的?
很多用NSIS打包的程序在安装的时候都有类似这样的窗口,例如Winamp 和CDex:
四.Microsoft Windows Installer
微软老大的封包形式!
如果某个软件是用Windows Installer打包的,那你就应该能在文件夹中看到*.msi文件。
这是最典型的特征
这些文件通常可以使用 /QB和 /QN参数进行自动安装。
Powertoys使用了 /s /v/qn参数,对于这些软件,你可以依次尝试上面提到的参数
看看哪个是有效的。
/qb 会在窗口中显示一个基本的安装进程
/qn 参数则不会显示任何窗口,直接在后台自动安装
阻止程序安装完成后自动重启动:
为了阻止某些程序安装成功后自动重启动(例如Kerio Personal Firewall 4),你可以在 /qn 或者 /qb参数后使用REBOOT=Suppress标记,例
如:
setup.msi "/qn REBOOT=Suppress"
有些安装程序使用 /s/v/qn参数进行自动安装,因此阻止它们重启动应该用:
setup.exe /s /v"/qn REBOOT=Suppress"
五.WISE Installer
用WISE技术打包的软件在安装的时候可以选择使用 /s参数进行自动安装:
Setup.exe /s
更多的其他参数:
You can run Wise Installation .EXE with command line options to automate many of the tasks you would normally do in the User
Interface. The list of options is as follows.
/c file.wse -- creates executable file from wise script
/r -- opens Wise in SetupCapture window
/u -- runs the upgrade wizard that checks for any upgrades online
/d CompVar=Value -- defines a single compiler variable in Enterprise Edition. Multiple definitions require multiple /d
/d=filename -- uses filename to define compiler variables. Each line in file is CompVar=Value
Example: installbuilder.exe /c /d _MYVAR_="Test" c:mysource ilessetup.wse
Wise Installations:
/T -- test mode
/X pathname -- extracts files into pathname
/Z pathname -- extracts files into pathname and reboots
/S -- silent install
/M -- prompts for windows, system, temp directories
/M=filename -- specifies a value file similar to /d above, but for standard variables (See NOTE below).
/M1 -- same as /m plus it prompts before any file that is self-registered
/M2 -- reserved for internal use by Wise during debugger sessions
Example: setup.exe /T
Unwise:
/Z -- remove empty directories, including one with unwise itself in it.
/A -- automatic mode, no user choices other than cancel.
/S -- silent mode, automatic mode with no user choices
/R -- rollback mode, selects option to rollback on uninstall
/U -- like automatic mode, but gives all choices other than custom/automatic title window title can be at the end of the
command line
Example: unwise.exe /S c:myprogramdirectoryinstall.log
NOTE: The values file is a simple text file with variables listed, one per line, in VARIABLE="VALUE" format. If the variable
is found in the values file, the specified value is used; otherwise, its value is unchanged. The file containing the
variables can be up to 32K.
我怎么知道哪些程序是使用Wise技术打包的?
使用Wise技术打包的大部分程序都会在开始运行的时候显示一个启动界面:
但是也有一些会最小化这个窗口,只显示一个深蓝色的背景,还有安装窗口在屏幕的中央.
转自:http://blog.csdn.net/zhaobangyu/article/details/18406957