为什么Install4j需要在卸载后重新启动下一次安装?

时间:2018-05-09 21:01:13

标签: install4j

我有两个使用install4j构建的Windows安装程序我执行以下步骤:

  1. 安装版本X
  2. 卸载版本X
  3. 安装版本x + 1
  4. 结果是以下消息: 未完成先前程序的安装/删除。您需要重新启动计算机才能完成安装。

    我知道原因是此消息是卸载步骤添加注册表项 HKEY_CURRENT_USER \ SOFTWARE \ ej-technologies \ install4j \ RebootCheckFile

    问题是为什么卸载步骤会添加此注册表项?

1 个答案:

答案 0 :(得分:1)

最有可能的原因是无法删除文件,因为正在运行的可执行文件仍在使用该文件。

虽然卸载程序仍在最后打开,但在%TEMP%目录(名称以“i4jlog”开头的文件)中搜索日志文件,并检查“UninstallFilesAction”的输出。

或者,安装程序可能无法覆盖文件,因为它正在使用中。检查安装程序的日志文件是否出现“延迟安装”。

您可以通过传递VM参数来抑制重新启动

-Dinstall4j.suppressReboot=true

安装程序。您可以在安装程序的“VM参数”属性中将其设置为固定VM参数。