2011-05-16 55 views
2

我正在使用IExpress來組合我的引導程序和msi文件。它工作正常,但如果我在沒有任何先決條件(.net 4,sql ce)的計算機上安裝該程序,它將失敗。它在重新啓動後總是失敗,這在安裝.net 4框架之後發生。在錯誤日誌,它指向我,它使沿IExpress重新啓動後無法找到msi

Error: Unable to locate application file

重新啓動它無法正確安裝之後安裝線的消息,但這不是爲這個項目可接受的解決辦法。任何人有關於如何解決這個問題的想法?讓我知道如果我需要解釋別的。謝謝。

+1

當你重新啓動,你得到任何東西寫入到RunOnce項?這通常是用於啓動任何需要在重新啓動後運行的程序的機制。您想要運行的文件可能存儲在臨時文件夾中,該文件夾可能在重啓過程中被清除。因此,在重新啓動之前,請檢查RunOnce鍵指向的內容,然後在重新啓動後檢查此路徑是否仍然有效。 – 2011-05-25 21:49:04

回答

1

斯蒂芬的權利;只要IExpress SFX終止,它將刪除它用於提取的臨時目錄(沿着%temp%\IXP000.TMP的行)。所以在重新啓動後,你的微星消失了。

要堅持您的安裝程序文件,您首先需要將所有內容複製到不同的目錄中。您可以啓動批處理文件(例如,將安裝程序命令設置爲cmd /c persist.bat之類的內容)。然後persist.bat看起來是這樣的:

@echo off 
xcopy /y * "%temp%\myproject\" 
msiexec /q /i "%temp%\myproject\install.msi" /l*v "%temp%\myproject_install.log"