8

I have a setup project in Visual Studio 2015 for my .NET Windows Forms project that needs SQL Server 2012 Express as a prerequisite. I have successfully created a bootstrapper (located in C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\SqlExpress2012) and added the following command to make it silent:

/q /action=Install /features=SQL,AS,RS,IS,Tools 
/instancename=SQLExpress /sqlsvcaccount="NT AUTHORITY\Network Service" 
/sqlsysadminaccounts="BUILTIN\Users" 
/agtsvcaccount="NT AUTHORITY\Network Service" 
/IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck`

however I still get the EULA popup despite having /IAcceptSqlServerLicenseTerms.

The install.log indicates that the command is indeed being applied (and the fact it does install silently, just after I have to click on the EULA). What gives? I'm confused on how it picks up all the rest of the command but ignores the /IAcceptSqlServerLicenseTerms.

The only theory I have is that it first calls SqlExpressChk.exe to determine whether to install the x32 or x64 bit version, and the EULA is attached to that. Any thoughts?

Here's the install.log line indicating my command is indeed being applied:

Installing using command 'C:\Users\ljhersma\AppData\Local\Temp\VSD11B8.tmp\SqlExpress2012\SQLEXPR_x64_ENU.EXE' and parameters '/qs /action=Install /features=SQL,AS,RS,IS,Tools /instancename=SQLExpress /sqlsvcaccount="NT AUTHORITY\Network Service" /sqlsysadminaccounts="BUILTIN\Users" /agtsvcaccount="NT AUTHORITY\Network Service" /ENABLERANU /IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck'
marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
Hershizer33
  • 1,206
  • 2
  • 23
  • 46
  • /IAcceptSqlServerLicenseTerms=true ? By the way in MSDN is spelled all in uppercase /IACCEPTSQLSERVERLICENSETERMS – Steve Jan 29 '16 at 20:28
  • I actually just got done trying `/IAcceptSqlServerLicenseTerms`, `/IAcceptSqlServerLicenseTerms=true`, `/IAcceptSqlServerLicenseTerms=True`, and `/IAcceptSqlServerLicenseTerms=1` and none worked. The documentation does make it pretty clear that `/IAcceptSqlServerLicenseTerms` should default to true. EDIT: Caps didn't work either. – Hershizer33 Jan 29 '16 at 20:29
  • You could try IACCEPTSQLNCLILICENSETERMS=YES if the application will use the native client – benni_mac_b Jan 29 '16 at 22:00
  • @benni_mac_b Thanks for the suggestion, tried it out and no dice unfortunately. – Hershizer33 Jan 29 '16 at 22:07

0 Answers0