title: Installing MS SQL Server Express 2017 with Inno Installer
body: <p>I'm desperately trying to install SQL Server Express 2017 with Inno Installer.
  Within my installer I include the extracted installer files.
  That means that I already executed the common SQLEXPR_x64_ENU.exe, to avoid the "extract-temp-folder" prompt while my installer is running.</p>
  
  <p>I execute the following on the cmd:</p>
  
  <p><code>{somePath}\SQLEXPR_x64_ENU\setup.exe /ACTION=Install /Q /SKIPRULES=RebootRequiredCheck /SUPPRESSPRIVACYSTATEMENTNOTICE=1 /IAcceptSQLServerLicenseTerms=1 /SECURITYMODE=SQL /SAPWD=secretPW /ConfigurationFile=ConfigurationFileExpr.ini</code></p>
  
  <p>The install succeeds.</p>
  
  <p>But when I do the same within my InnoInstaller-File like this:</p>
  
  <p><code>...
  [Files]
  Source: "SQLEXPR_x64_ENU\*"; DestDir: "{tmp}\SQLEXPR_x64_ENU"; Check: not SQLExpress_Check; Flags: recursesubdirs;
  [Run]
  Filename: "{tmp}\SQLEXPR_x64_ENU\setup.exe"; Description: "Installing SQL Server Express 2017..."; StatusMsg: "Installing SQL Server Express 2017...";       \
  Parameters: "/ACTION=Install /Q /SKIPRULES=RebootRequiredCheck /SUPPRESSPRIVACYSTATEMENTNOTICE=1 /IAcceptSQLServerLicenseTerms=1 /SECURITYMODE=SQL /SAPWD=secretPW /ConfigurationFile=ConfigurationFileExpr.ini"; Check: not SQLExpress_Check; Flags: runascurrentuser;
  ...</code></p>
  
  <p>SQL Installer fails with the following error:</p>
  
  <p><code>Exception type: System.MissingMethodException
      Message: 
          Method not found: 'Void Microsoft.SqlServer.Chainer.Infrastructure.RoleService.Initialize(Microsoft.SQL.Chainer.Product.RolesType)'.
      HResult : 0x80131513
      Data: 
        DisableWatson = true
      Stack: 
          at Microsoft.SqlServer.Configuration.BootstrapExtension.InitializeRoleServiceAction.ExecuteAction(String actionId)
          at Microsoft.SqlServer.Chainer.Infrastructure.Action.Execute(String actionId, TextWriter errorStream)
          at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.&lt;&gt;c__DisplayClasse.&lt;ExecuteActionWithRetryHelper&gt;b__b()
          at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionHelper(ActionWorker workerDelegate)</code></p>
  
  <p>Is this a permission error?
  I do not have a clue.
  On cmd-shell it works, but not on InnoInstaller.</p>
  
  <p>Thanks in advance for your efforts and have a nice day.</p>