inno-setup - 从Inno安装静默安装 SQL Server Express 2012

  显示原文与译文双语对照的内容

我正在尝试从使用Inno创建的应用程序安装程序中静默安装 SQL Server Express 2012. 当从 命令行 运行以下命令时,SQL Server Express 2012安装在我只显示安装进度但不允许用户输入任何输入的情况下。

命令行 命令:


C:UsersJasonDesktop>SQLEXPR_x86_ENU.exe/ACTION=Install/INSTANCENAME=MYINSTANCE/INSTANCEID=MYINSTANCE/QS/HIDECONSOLE/INDICATEPROGRESS="False"/IAcceptSQLServerLicenseTerms/SQLSVCACCOUNT="NT AUTHORITYNETWORK SERVICE"/SQLSYSADMINACCOUNTS="builtinadministrators"/SKIPRULES="RebootRequiredCheck"



为了从我的Inno安装脚本中执行这里操作,我有以下代码:


 Exec(installName,


'/ACTION=Install/INSTANCENAME=MYINSTANCE/INSTANCEID=MYINSTANCE/QS/HIDECONSOLE/INDICATEPROGRESS="False"/IAcceptSQLServerLicenseTerms/SQLSVCACCOUNT="NT AUTHORITYNETWORK SERVICE"/SQLSYSADMINACCOUNTS="builtinadministrators"/SKIPRULES="RebootRequiredCheck"',


'',


SW_SHOW,


ewWaitUntilTerminated,


ResultCode);



installName = SQLEXPR_x86_ENU.exe

当从安装程序运行时,SQL Server Express 2012安装程序开始,然后显示 SQL Server 安装中心窗口,用户必须选择安装类型。 他们也必须同意许可协议,在直接从 命令行 运行时不需要这个许可协议。

如何从Inno安装silently运行安装程序的任何想法?

时间: 原作者:

如果你在命令linie中运行提取的SQL setup.exe,则问题可以能是将 命令行 参数传递给 SQLEXPR_x86_ENU.exe,所有。 但是如果通过 命令行 传递,它首先提取安装程序,然后用修改过的命令行 运行它- - 一对引号被删除了( 或者它只传递第一个字符串作为参数) 。 所以应该在其他的引号中放置整个 命令行 参数,而你的命令行 应该看起来像这个( 以 '" 开始,并以 "' 结束):


'"/ACTION=Install/INSTANCENAME=MYINSTANCE/INSTANCEID=MYINSTANCE/QS/HIDECONSOLE/INDICATEPROGRESS="False"/IAcceptSQLServerLicenseTerms/SQLSVCACCOUNT="NT AUTHORITYNETWORK SERVICE"/SQLSYSADMINACCOUNTS="builtinadministrators"/SKIPRULES="RebootRequiredCheck""'



原作者:
...