2014-06-10 46 views
0

我有一個Wix Bootstrapper,它可以安裝/更新許多MSI。 MSI運行並更新正常,Bootstrapper可以在初始安裝時正常運行。然而,我試圖用Boostrapper測試更新,每次它都不會啓動,並在%Temp%文件夾中產生大量進程和Setup_XXXXXXXXXXXXX_Failed.txt文件。每個這些failed.txt文件最後包含以下內容:Wix Bootstrapper不會更新,錯誤0x800705b4

[3098:23F8] [2014-06-10T11:03:00] e000:錯誤0x800705b4:未能打開父管道:\。\ pipe \ BurnPipe。{087217E1-A4F3-4951-8319-06031945DA08} [3098:23F8] [2014-06-10T11:03:00] e000:錯誤0x800705b4:無法連接到未升級的進程。 [3098:23F8] [2014-06-10T11:03:00] e000:錯誤0x800705b4:無法運行每臺計算機模式

數字因文件而異,但錯誤保持不變。

我使用各種命令行參數運行此Bootstrapper Exe,以告訴它要安裝哪些MSI併爲其提供Install Location和各種自定義操作參數。

回答

2

這報告在http://wixtoolset.org/issues/3890/。我剛剛修復了它,下一個WiX版本不應該產生大量的進程。

但是,根本問題是Burn收到CommandLineToArgvW無法解析的命令行。您需要確保所有雙引號都已正確轉義,並且在使用雙引號的情況下,對於偶數的空格使用雙引號。

+0

下面的字符串是我經由命令行傳遞什麼: /I INSTALLCW6 = 1 ORC = 0 JOBS = 0 ROUTE = 0 ACTG = 1 DONOTMSMQ = 0 CUSTCODE = MAFL SERVER = NickWin8 DBNAME = MAFLTrany INSTALLFOLDER =「C: \ Users \ nickd \ Desktop \ WixTestingInstall「UPDATEDATE =」2014年6月10日下午12:05:14「INSTALLTYPE =」更新「USEINTEGRATEDSECURITY = 0 APPENDWILDCARD = 1 我沒有看到沒有正確轉義的雙引號 – downeysyndrome

+0

@downeysyndrome我的數量,這是257個字符。根據你如何調用你的EXE,你可能會遇到命令行可能會有多長時間的限制。 –

+0

我想我找到了問題。我有一個.net應用程序,它將所有這些數據傳遞給.exe,並從註冊表項中提取INSTALLFOLDER,並且如果InstallFolder的路徑以「\」(註冊表項添加的)結尾,則它將失敗。感謝您的幫助! – downeysyndrome