问题标签 [install4j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
741 浏览

install4j - 如何禁用 install4j 向导上的“定位”按钮并在未找到 JRE 的情况下显示自定义消息?

我正在尝试创建一个没有捆绑 JRE 的安装程序,它将显示一条消息,告诉用户从 java.com 下载正确的 JRE,而不是在安装程序找不到合适的 JRE 时要求他们找到 JRE,但我找不到任何将允许我这样做。

我尝试在安装程序的启动序列中添加屏幕或添加操作,但它们都只有在 install4j 向导找到合适的 JRE 或要求用户找到合适的 JRE 或要求用户下载 JRE(动态捆绑)后才会执行。

对此的任何见解将不胜感激。

0 投票
1 回答
436 浏览

install4j - 如何自定义 install4j 中的初始进度对话框?

默认情况下,install4j 安装程序有一个带有进度的初始对话框,大概用于解压安装程序的 jre 等。此进度对话框提到 install4j 作为用于创建安装程序的工具。这可以在项目设置中使用“抑制初始进度对话框”复选框来抑制。

完全禁止此对话框并不是真正可取的,因为机器在解压缩时停滞不前,没有任何东西呈现给用户。

理想情况下,可以使用公司特定的图形/文本等自定义此对话框。

这可能吗?如果是这样,它是如何完成的?

0 投票
1 回答
1790 浏览

mysql - 如何(静默)在 32 位和 64 位 Windows 上卸载 MySQL

我们将 Install4J 用于我们当前版本的软件,并在安装过程中静默安装 MySQL 5.1。

对于我们软件的下一个版本,如果是升级的话,我想去掉MySQL 5.1,安装5.5。理想情况下,卸载应该静默进行,但不是硬性要求。我设法让它在 32 位 Windows XP 上运行,但不能在 64 位 Windows 7 上运行。这是我目前所拥有的:

这会将 MySQL Server 5.1 的产品代码放入mysqlUninstallKey变量中。在这一步之后,我有一个具有以下设置的“运行可执行文件或批处理文件”步骤:

  • 可执行文件:msiexec.exe
  • 工作目录:${installer:sys.system32Dir}
  • 参数:/I{installer:mysqlUninstallKey}

这将(在 32 位 Windows XP 上)运行 MySQL 服务器的安装程序,然后用户必须手动选择“删除”。

在 64 位 Windows 7 上,它只显示一个对话框,显示所有命令行标志及其解释,因此 msiexec.exe 正在启动,但我传递给它的参数无法识别。

知道可能出了什么问题吗?或者,也许我做错了,有更好的方法吗?

我使用 Install4j 4.2.8。

0 投票
1 回答
643 浏览

install4j - 将环境变量添加到 install4j

是否可以将环境变量添加到 install4j 一次,而不是在“指定环境变量”字段下添加此变量?

例如,我想添加 JAVA_VENDOR=Sun 一次,每次我将使用“运行可执行文件或批处理文件”操作时,该变量将被正在运行的进程识别。

提前致谢, 马克西姆

0 投票
1 回答
526 浏览

install4j - 如何防止我的 exe4j 可执行文件被赛门铁克端点标记为 Bloodhound 特洛伊木马?

我创建了一个 java 应用程序并使用 exe4j 版本 5 将其包装在可执行文件中,但每次我启动可执行文件时,赛门铁克端点保护 12 象限都会将 exe 文件视为可执行文件,因为它认为可执行文件是猎犬木马。但是,如果我使用 exe4j 版本 2 或更低版本创建可执行文件,则不存在此问题。

如果我使用 install4j 创建安装包,也会发生同样的问题。

是否需要对 exe4j 或 install4j 项目进行任何设置来解决此问题

0 投票
1 回答
189 浏览

textfield - Install4j:如何在文本字段中使用字符串数组

在我的安装程序中有一个带有文本字段的屏幕,它会在循环中多次出现以配置不同的服务实例。为了清洁,我想将这些值保存在字符串数组中。

如何将数组的特定索引绑定到 texfield?我在文本字段的“变量名”字段中写入了什么?

我已经尝试了所有可能的组合,例如${installer:vars[0]},但没有一个有效。

0 投票
2 回答
184 浏览

copy - Install4j:如何在运行时复制和修改启动器

在我的安装程序中,我需要一些启动器,根据用户输入将它们安装为服务。除了名称中的索引之外,这些启动器都是相同的。

我不想手动创建所有这些启动器,因为那将无法维护。

有没有办法在安装程序运行时复制和修改启动器,然后将它们安装为服务?

0 投票
1 回答
1393 浏览

install4j - 如何在 ${installer:sys.installationDir}/jre 以外的其他地方安装捆绑的 JRE?

好的,这对我来说有点难以用语言表达,所以请耐心等待。

我们的项目目录结构依赖于 ${sys.installationDir}/jre 作为用于运行我们产品的 JRE 的位置。这适用于使用 install4j 内置安装程序的新安装,因为 install4j 默认将 jre 放在那里。

但是对于 install4j 对旧版安装的内置更新,这是有问题的。

我有我正在重用的安装代码,不幸的是它依赖于 Java 1.6 功能。我有运行 1.5 的旧版产品安装,并且由于其他原因无法更新。

我需要允许 install4j 安装程序将 Java 1.6 jre 解压到临时位置,仅用于执行安装代码,然后将其删除。

我似乎找不到配置捆绑 JRE 安装位置的方法。任何提示/建议?

0 投票
1 回答
1197 浏览

install4j - 如何在使用 install4j 更新期间仅删除安装程序创建的文件

我有一个 install4j 项目并想做一个项目。

我的设置中有一个libs-folder,我所有的 jar 都在其中打包:

Alien.jar 是一个附加文件,不是从我的设置中创建的。如果我使用包提供更新libs- 文件夹将alien.jar被删除,我不明白为什么。

DeleteFilesAction之前有一个InstallFilesAction,它有一个过滤器,所有我们都alien.jar不会被删除。如果我在我之后制作一个 MessageBox DeleteFilesAction,则

外星人.jar

还存在。

当 InstallFileAction 启动时,完整的libs-Folder 似乎已被删除。

我相信有配置标志,我不知道。

问题:如何删除完整的libs文件夹,期待alien.jar?

0 投票
1 回答
686 浏览

install4j - install4j 安装程序有类似 unzip -t 的东西吗?

我使用 install4j 构建的安装程序将通过更新程序分发到数据中心中的多个(有时是数百个)设备。在我们当前的实现中,这些文件使用 unzip -t “测试”是否损坏。我意识到我们可以比较文件上的 md5sum,但这会增加我们希望在构建过程中避免的额外开销。还有其他建议吗?