Powershell MSI安装程序脚本

时间:2016-11-15 10:53:30

标签: powershell windows-installer msiexec

请问有人能帮我解决下面写的powershell脚本吗?我似乎无法启动安装程序: -

$msiName = "D:\Folder\Build 1.9.0.39621 Setup.msi”
Write-Host "Installing msi"

$argumentlist = "/i [application] /qn /l*v log.txt LOGDIR=`"D:\Log`" SQLSERVER=`"xxx-xxx-xxxx-2`" DBAUTOBACKUP=`"0`" APPPOOLDOMAIN=`"Test-as`" APPPOOLUSER=`"Testservice`" APPPOOLPASSWD=`"xxxxxxx`" ADQUERY=`"Test-as.net`" ADNAME=`"ultra`""

$application = $msiName
$argumentlist = $argumentlist.Replace("[application]",$application)

Start-Process -FilePath "C:\Windows\System32\msiexec.exe" -ArgumentList $argumentlist -Wait 

我试过简单,但它仍然无效。以下是我尝试过的一些不同方法: -

(第一次尝试)

$argumentList = "/i `"xxxxxx 1.9.0.39641 Setup.msi`""

Start-Process -FilePath "C:\Windows\system32\msiexec.exe" -ArgumentList $argumentList 

(第二次尝试)

$argumentList = "/i {0}" -f "xxxxxx 1.9.0.39641 Setup.msi"

Start-Process -FilePath "C:\Windows\system32\msiexec.exe" -ArgumentList $argumentList 

(第3次尝试)

$argumentList = ("/i {0}" -f "xxxxxx 1.9.0.39641 Setup.msi")

Start-Process -FilePath "C:\Windows\system32\msiexec.exe" -ArgumentList $argumentList 

(第4次尝试)

$argumentList = ("/i {0}" -f "xxxxxx 1.9.0.39641 Setup.msi")

Start-Process -FilePath "C:\Windows\system32\msiexec.exe" -ArgumentList "$argumentList" 

2 个答案:

答案 0 :(得分:0)

这是我过去使用的,应该适合你。

#authorized_to_purchase_box {
  display:none;
}

答案 1 :(得分:-1)

我删除了旧答案。

新的可能解决方案

ArgumenList是一个字符串数组,因此可以使用多个参数。

Start-Process -FilePath "C:\Windows\system32\msiexec.exe" -ArgumentList "/i", "`"xxx yyyyy.msi`""

我尝试使用安装程序,包括名称中的空白,在我的机器上工作。

希望有所帮助