2014-01-29 51 views
0

我正在使用WIX 3.8,Windows 8 Pro,Visual Studio 2013,並且正在執行無提示安裝。WIX 3.8 msiexec.exe/quiet錯誤1603

當我用no/quiet參數運行時,Ir運行正常。但是當我把「/安靜」,沒有發生。

/qn參數存在一些問題...任何其他參數運行正常。

string arg =「SetupWIX.msi」;

  Process p = new Process(); 

      p.StartInfo.FileName = "msiexec.exe"; 
      p.StartInfo.CreateNoWindow = true; 
      p.StartInfo.Arguments = "/i " + arg +" /quiet /l*v log.txt"; 
      p.Start(); 

,並給它錯誤3.

MainEngineThread將返回1603

什麼想法?

電烙鐵

+0

你能分享log.txt內容嗎? –

+0

太長了..我不是哪個部分。如果你想要我,我可以通過電子郵件發送。謝謝 – Diego

+0

發送至[email protected] –

回答

0

我解決了它!感謝所有yopu您的時間

我失蹤

p.StartInfo.Verb = 「運行方式」;

我不知道我需要管理員權限才能執行「/ quiet」。

+1

「/ quiet」不需要管理員。你的MSI需要管理員。安靜只會抑制MSI提出升級的能力。請參閱下面的答案。 –

5

根據您寄給我的日誌,您的MSI需要升級。

不是所有的MSI都這麼做。大部分都是。如果你是在每臺計算機環境中安裝程序和/或寫入受限區域(Program Files,HKLM,Windows等),則需要提升。通常,當您雙擊MSI時,UI序列以標準用戶身份運行,然後當它轉換爲執行序列時,會根據需要提示提升。然而,當你運行/安靜時,它不能這樣做,所以它只是失敗。解決這個問題的兩種方法是提升呼叫過程或首先「宣傳」MSI,以便系統信任它。在這種情況下,UI-> Exec標高會自動發生,而無需UAC請求。