Échec de l'installation silencieuse SQL Server 2008 R2

J'ai téléchargé le logiciel SQL Server 2008 R2 de Microsoft et je travaille sur le script d'une installation silencieuse. Je reçois les erreurs suivantes (et le travail de pâte en double n'est pas un accident, voilà comment cela me paraît)

The following error occurred: Exception has been thrown by the target of an invocation. Error result: 1152035024 Result facility code: 1194 Result error code: 43216 Please review the summary.txt log for further details The following error occurred: Exception has been thrown by the target of an invocation. Error result: 1152035024 Result facility code: 1194 Result error code: 43216 Please review the summary.txt log for further details Microsoft (R) SQL Server 2008 R2 Setup 10.50.1600.01 

C'est ce qui s'affiche dans le journal d'installation SQL détaillé.

 2011-02-23 09:53:13 Slp: Running Action: ExecuteInitWorkflow 2011-02-23 09:53:13 Slp: Workflow to execute: 'INITIALIZATION' 2011-02-23 09:53:13 Slp: Error: Action "Microsoft.SqlServer.Configuration.BootstrapExtension.ExecuteWorkflowAction" threw an exception during execution. 2011-02-23 09:53:13 Slp: Microsoft.SqlServer.Setup.Chainer.Workflow.ActionExecutionException: Exception has been thrown by the target of an invocation. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentNullException: Value cannot be null. 2011-02-23 09:53:13 Slp: Parameter name: InstallMediaPath 

J'espère que quelqu'un peut m'aider à travailler à travers ça. Voici une version simple de mon code PowerShell.

 $arguments = @() $arguments += "/q" $arguments += "/ACTION=Install" $arguments += "/FEATURES=SQL,Tools" $arguments += "/INSTANCENAME=MSSQLSERVER" $arguments += "/SQLSVCACCOUNT=`"$NetBIOSDomainName\$SQLServerServiceAccount`"" $arguments += "/SQLSVCPASSWORD=`"$SQLServerServiceAccountPassword`"" $arguments += "/SQLSYSADMINACCOUNTS=`"$NetBIOSDomainName\$SQLSysAdminAccount`"" $arguments += "/AGTSVCACCOUNT=`"$NetBIOSDomainName\$SQLServerAgentAccount`"" $arguments += "/IACCEPTSQLSERVERLICENSETERMS" Start-Process "$SQLServerSetupLocation\setup.exe" -Wait -ArgumentList $arguments -RedirectStandardOutput error.txt 

Je pense que mon problème a fini par être que je n'utilisais pas le paramètre -WorkingDirectory de la cmdlet Start-Process. Le file setup.exe appelle toutes sortes de process dans le cadre de l'installation et je pense que les process enfants qu'ils appelaient n'étaient pas au courant du "WorkingDirectory" correct. Le code qui fonctionne est le suivant.

 Start-Process "$SQLServerSetupLocation\setup.exe" -Wait -WorkingDirectory $SQLServerSetupLocation -ArgumentList $arguments