我需要MSIEXEC
从 PowerShell 运行命令行并检查安装是否成功。
如果我做:
msiexec.exe /qn /l*v e:/tmp/surfaceruntime.log /i '\\nas\lui\tools\surfaceruntime2.msi'
(指定的 MSI 不存在 - 用于测试目的)
我得到一个$LASTEXITCODE
1
OTOH,如果我这样做:
$parms=@("/qn", "/l*v", "e:/tmp/surfaceruntime.log";"/i";"\\nas\lui\tools\surfaceruntime2.msi")
$run=[System.Diagnostics.Process]::Start("msiexec",$parms)
$run.WaitForExit()
$run.ExitCode
我得到 1619(就像%ERRORLEVEL%
我从 运行命令行一样CMD
)。
怎么会$LASTEXITCODE
不正确?