2012-08-15 92 views
2

我試圖通過使用cmd文件從Powershell運行MSI安裝命令。
創建我的install命令:無法安裝[Name] MsiExec返回:255,從Powershell運行cmd文件

msiexec /i [insert here a HUGE amount of param values] /lv install.log /passive 

然後我把它寫入temp.cmd,然後執行從Powershell的如下:

$exitCode = (Start-Process -FilePath "temp.cmd" -Wait -Passthru).ExitCode 

然後我收到以下錯誤信息:

CategoryInfo:OperationStopped:255:String
RuntimeException FullyQualifiedError編號
無法安裝[微星名稱] MSIEXEC返回:255

是什麼原因造成的?

+1

這是不可能回答與問題msiexec perpsective如果你沒有顯示temp.cmd – 2012-08-15 13:17:30

+0

的內容謝謝!,實際的命令太長了,所以我添加了一個簡短的版本來給我正在做的事情上下文。 – 2012-08-15 14:07:36

+1

我很好奇,爲什麼你會有一個非常長的命令。如果你設置了大量的公共屬性,你應該考慮使用transform(foo.mst TRANSFORMS = foo.mst)來封裝並縮短命令行。 – 2012-08-15 14:19:56

回答

2

如果您嘗試運行我是有從命令行,我得到了以下錯誤消息的麻煩msiexec命令:

輸入線過長

此錯誤ISN」在Powershell中執行時很明顯,您可能會認爲它是MsiExec的一個問題。

這是一個有點神祕的錯誤消息,並涉及其cmd.exe的8191的
總長度的命令行查看CMD長度Microsoft知識庫文章:http://support.microsoft.com/kb/830473