我使用的是Win7 64位系统。我通过exe安装程序在我的计算机上安装了32位程序,但msi没有安装它。我们说它的版本是1.0。这个程序文件夹有一个uninstall.exe文件,点击后会卸载该程序。
现在,我已经为Windows安装程序5.0使用了明智的msi软件包,用于下一个版本2.0。现在在msi安装文件之前,我想从msi本身调用我系统上的uninstall.exe并删除所有现有文件,以便msi安装可以是干净的。
我尝试在工具中使用msi脚本中的destination命令执行程序。我已经在" installvalidate"下给出了要调用的exe的路径和名称。命令。但是我收到了一个错误:
错误1721.此Windows Installer程序包存在问题。无法运行此安装所需的程序。请联系您的支持人员或软件包供应商。
要解决此问题,我尝试了以下操作: 1.使用管理员帐户 2.在msi的上下文菜单中提供“以管理员身份安装”选项 2.关闭防病毒软件 3.在cmd中,键入“msiexec u / unregister”并按Enter键。 再次在命令提示符下键入“msiexec / register”
但它没有帮助。我试图调用卸载,因为没有它我在msi安装后得到两个控制面板条目。从exe安装程序和msi安装程序。
检查日志文件: 一些提取物......
动作结束12:05:26:InstallValidate。返回值1。
MSI(s)(6C:18)[12:05:26:714]:采取行动:卸载
行动12:05:26:uninstallexe。
动作开始12:05:26:uninstallexe。
MSI(sC)(6C:18)[12:05:26:714]:注意:1:2235 2:3:ExtendedType 4:SELECT Action
,Type
,Source
, Target
,NULL,ExtendedType
FROM CustomAction
WHERE Action
=' uninstallexe'
MSI(sC)(6C:18)[12:05:26:730]:注意:1:1721 2:uninstallexe 3:C:\ Program Files(x86)\ SOME_PROGRAM \ 4:uninstal.exe
DEBUG:错误2835:在对话框ErrorDialog上找不到控件ErrorIcon
内部错误2835. ErrorIcon,ErrorDialog
错误1721.此Windows Installer程序包存在问题。无法运行此安装所需的程序。请联系您的支持人员或包装供应商。操作:uninstallexe,位置:C:\ Program Files(x86)\ SOME_PROGRAM \,命令:uninstal.exe
MSI(s)(6C:18)[12:05:29:350]:产品:SOME_PROGRAM 2.0 - 错误1721.此Windows Installer程序包存在问题。无法运行此安装所需的程序。请联系您的支持人员或包装供应商。操作:uninstallexe,位置:C:\ Program Files(x86)\ SOME_PROGRAM \,命令:uninstal.exe
动作结束12:05:29:uninstallexe。返回值3。 行动结束12:05:29:安装。返回值3。
...... 没有太多的想法。
答案 0 :(得分:0)
从你的帖子中不清楚外部程序是如何启动的,以及在msi脚本中从目标命令执行程序""意味着(至少对我而言)。错误1721是Windows Installer错误,因为您似乎使用某种运行程序的脚本,这意味着脚本失败,而不是外部程序,因为Windows Installer没有启动外部程序 - 脚本是。所以专注于"脚本"不是外部程序或Windows Installer。
详细日志可能有所帮助。使用msiexec / I [msi文件的路径] / l * vx [文本日志文件的路径]开始安装,看看是否有任何线索。
如果您的执行是在InstallValidate之前,那么它将不会以提升运行,因此如果脚本需要提升权限,它将失败。