我们将 Java 安装程序部署到大量机器,但其中大约一半的机器出现死机。现在,后续部署因以下消息而失败:
用户“SYSTEM”之前已启动产品“Java 7 Update 10”的安装。该用户需要再次运行该安装才能使用该产品。您当前的安装现在将继续。
其次是:
错误 1704。Java 7 Update 10 的安装目前已暂停。您必须撤消该安装所做的更改才能继续。是否要撤消这些更改?
如果您以交互方式运行安装,则没有问题。您只需单击“确定”,然后单击“是”,它就会继续。但是,如果您运行命令行安装,它会停止。我们如何从命令行取消暂停的安装?
答案1
据我所知,无法使用 MSIEXEC 从命令行取消暂停的 MSI 安装(它没有相关参数)。
无论如何,您可以尝试运行以下命令:
REG DELETE HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress
此键是在安装过程中创建的。删除它应该允许您再次重新运行安装程序。
答案2
如果 Tomas 的回答不能解决问题,你可以尝试执行文件公用事业。
它基本上还会删除 MSI 安装留下的元数据,但不需要您找出存储信息的所有位置。
例如删除 inProgress 信息:
msizap.exe p
或删除回滚信息:
msizap.exe s
答案3
我发现在 Windows 10 (x64) 中,您可以尝试删除不在 HKLM 中的密钥,而是在当前用户注册表分支 HKEY_USERS\SXX-XX-...\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress 中