首页 > 解决方案 > 如果使用管理员用户安装,Install4J 将不会启动应用程序

问题描述

我们正在尝试使用管理员用户权限安装我们的 Eclipse RCP 应用程序。它在安装过程中选择默认目录 C:\Program_Files<Path given in media options>。我们的要求是无人值守安装,用户不应该有机会拿起目录。

然而,由于普通用户对目录 C:\Program_Files<Path given in media options> 没有必要的权限,我们的应用程序将无法启动。

无论如何配置默认安装目录以登录用户空间而不是 C:\Program_Files<...> 默认情况下?

任何帮助将不胜感激。

标签: javainstall4j

解决方案


您可以将“运行脚本”操作添加到安装程序的“启动”节点,并使用您自己的逻辑来设置安装目录,例如使用脚本

if (context.isUnattended() && Util.isWindows() && !Util.hasFullAdminRights()) {
    context.setInstallationDirectory(
        new File((String)context.getVariable("sys.localAppdataDir"), "myApp")
    );
}
return true;

推荐阅读