2016-09-09 20 views
0

我正在使用Win7 64位系統。我有一個32位程序通過exe安裝程序安裝在我的電腦上,即它不是由msi安裝的。讓我們說它的版本是1.0。這個程序文件夾有一個uninstall.exe文件,點擊卸載這個程序。明智的Windows Installer 5.0無法呼叫.exe

現在我已經使用wise for windows installer 5.0爲下一個版本2.0製作了msi包。現在,在msi安裝這些文件之前,我想從msi本身調用我的系統上的uninstall.exe,並刪除所有現有文件,以便msi安裝可以清理乾淨。

我已經嘗試在工具中使用msi腳本中的目標命令的執行程序。我已經給出了在「installvalidate」命令下調用的exe的路徑和名稱。但是出現錯誤:

錯誤1721.此Windows安裝程序包存在問題。此安裝完成所需的程序無法運行。請聯繫您的支持個人或套餐供應商。

要解決這個問題我已經試過如下: 1.使用管理員帳戶 2.提供微星 2的上下文菜單中安裝以管理員身份選項關掉殺毒 3.在cmd中,鍵入「MSIEXECū /取消註冊「並按下回車鍵。 再次在命令提示符下,鍵入「msiexec/register」

但它沒有幫助。我想調用卸載,因爲沒有它,我得到兩個控制面板條目後msi安裝。從exe安裝程序和msi安裝程序。

經過日誌文件: 一些提取物...

行動結束12點05分26秒:InstallValidate。返回值1. MSI(s)(6C:18)[12:05:26:714]:Doing action:uninstallexe Action 12:05:26:uninstallexe。 動作開始12:05:26:uninstallexe。 MSI(S)(圖6C:18)[12:05:26:714]:注:1:2235 2:3:ExtendedType 4:SELECT ActionTypeSourceTarget,NULL,ExtendedType FROM CustomAction WHERE Action =' uninstallexe' MSI(s)(6C:18)[12:05:26:730]:注意:1:1721 2:uninstallexe 3:C:\ Program Files(x86)\ SOME_PROGRAM \ 4:uninstal.exe DEBUG :錯誤2835:在對話框ErrorDialog 內部錯誤2835上未找到控件ErrorIcon。ErrorIcon,ErrorDialog 錯誤1721.此Windows安裝程序包存在問題。此安裝完成所需的程序無法運行。聯繫您的支持人員或軟件包供應商。操作:uninstallexe,位置:C:\ Program Files(x86)\ SOME_PROGRAM \,命令:uninstal.exe MSI(s)(6C:18)[12:05:29:350]:Product:SOME_PROGRAM 2.0 - Error 1721.這個Windows安裝程序包存在問題。此安裝完成所需的程序無法運行。聯繫您的支持人員或軟件包供應商。操作:uninstallexe,位置:C:\ Program Files(x86)\ SOME_PROGRAM \,命令:uninstal.exe

操作已結束12:05:29:uninstallexe。返回值3. 行動結束12:05:29:INSTALL。返回值3.

...... 沒有太多的想法。

+0

聽起來像這個軟件的版本1.0可以安裝一個MSI文件包裝在一個setup.exe文件?如果是這種情況,您可以通過調用主要升級來可靠地卸載它。你確定版本1.0不是MSI安裝嗎? –

+0

嗨,斯坦因,是的,我確定版本1.0不是MSI。這是我們第一次做MSI包裝。在MSI安裝過程開始之前,MSI可以在目標計算機上調用exe文件嗎?或者MSI只能在msi安裝發生後才能在目標計算機上調用exe文件? –

回答

0

從您的帖子中不清楚您的外部程序是如何啓動的,以及「在msi腳本中執行來自目標命令的程序」是指(至少對我而言)。錯誤1721是Windows安裝程序錯誤,並且由於您似乎正在使用某種運行該程序的腳本,這意味着該腳本失敗,而不是外部程序,因爲Windows Installer未啓動外部程序 - 該腳本是。所以關注「腳本」而不是外部程序或Windows Installer。

詳細日誌可能會有所幫助。使用msiexec/I [msi文件路徑]/l * vx [文本日誌文件的路徑]開始安裝並查看是否有任何線索。

如果您的執行位於InstallValidate之前,那麼它將不會以高程運行,因此如果腳本需要提升特權,則它將失敗。