我尝试使用NSIS进行MS SQL 2008 R2 Management Studio Express的静默安装,但到目前为止我还没有成功。
理论上,如果我传递/QUIET /IACCEPTSQLSERVERLICENSETERMS /FEATURES=SSMS /ACTION=Install
参数,安装程序将进行静默安装,但事实并非如此。
这个参数隐藏了一般的GUI,但是在安装过程的中间,setup.exe将弹出一个cmd窗口,更糟糕的是它在其中写了一个“成功”文本,但此时安装没有完成,如果我关闭cmd窗口,安装过程将失败。
这是完整的NSIS命令:
ExecWait '$OUTDIR\SQLManagementStudio_x86_ENU.exe /QUIET /IACCEPTSQLSERVERLICENSETERMS /FEATURES=SSMS /ACTION=Install'
从http://www.microsoft.com/en-us/download/details.aspx?id=22985
下载SQLManagementStudio_x86_ENU.exe当我尝试安装MS SQL Server 2008 R2时,此参数有效
答案 0 :(得分:0)
如果您不希望显示命令窗口,请将ExecWait
替换为nsExec:Exec
,如下所示:
nsExec::Exec '$OUTDIR\SQLManagementStudio_x86_ENU.exe /QUIET /IACCEPTSQLSERVERLICENSETERMS /FEATURES=SSMS /ACTION=Install'
我希望这会有所帮助。
答案 1 :(得分:0)
似乎有一个未记录的参数 / hideconsole 会阻止弹出窗口显示。
代码现在看起来像这样:
ExecDos::exec '"$OUTDIR\binary\SQLManagementStudio.exe" /hideconsole /QUIET /IACCEPTSQLSERVERLICENSETERMS /FEATURES=SSMS /ACTION=Install' "" "$OUTDIR\SQLManagementStudio.log"
答案 2 :(得分:0)
您可以尝试以下选项:
/ Q / ACTION = INSTALL / IACCEPTSQLSERVERLICENSETERMS / HIDECONSOLE / Features = SSMS / INSTANCENAME = mssql2008R2 / SAPWD =" sapass123" / SECURITYMODE = SQL