问题标签 [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 回答
681 浏览

java - Install4j - 如何检查条件表达式中是否存在文件?

例如,我可以测试系统是否为 64 位 Windows 系统:

我现在的问题是如何检查 Install4j 条件表达式中计算机上的特定目录中是否存在“c:\test\myTestFile.txt”?

0 投票
1 回答
217 浏览

installation - 如何“引导”非 install4j 软件安装的 install4j 升级安装?

我几乎选择 install4j 作为我项目的安装包。在许多其他优点中,据我所知,它对升级的内置支持超越了该领域。不过我确实有一个奇怪的问题..

是否有最佳实践或任何可重用代码来支持“引导” install4j 安装程序的概念,以及它需要支持的任何元数据升级使用“本土”安装机制安装的产品的旧版本?

与我假设的许多项目一样,我们的项目已经存在多年,并且有用于 Windows 的 InstallShield 安装程序和用于 Unix 的 BASH 脚本的混杂。我们正在使用 install4j 来整合所有这些。

一些可能有趣的后续问题可能是: 1. 有没有办法可以在 API 中设置从 isUpgradeInstallation() 返回的值?2. 如果我将一个文件放到 .install4j 目录中,并且在我的新安装程序中嵌入了应用程序 ID,那么 install4j 可以运行吗?

任何想法/指针将不胜感激。

0 投票
1 回答
107 浏览

install4j - 如何测试我的安装程序是否包含文件?

我们使用 install4j 构建了一个安装程序。生成的可执行文件针对不同版本的软件有多种风格,可能包含不同的语言。在安装过程中的某个时刻,用户可以选择应该安装哪些语言。因此,出现了一个包含复选框列表的步骤。我现在想测试安装程序中包含哪些语言并相应地自定义列表。

我的问题是:有没有办法在运行时测试安装程序中包含/存在哪些文件?还是我必须在构建时检查它并包含变量或其他东西?

0 投票
1 回答
247 浏览

install4j - install4j - 安装组件屏幕的事件

是否有任何与安装组件屏幕相关的事件?

类似 Next 按钮的东西最初被禁用,在选择组件后,Next 被启用。我看到许可证屏幕发生了这种情况。为什么我们没有它用于安装组件屏幕?

0 投票
0 回答
760 浏览

installation - 如何在 install4j 操作中实现文件或目录过滤器脚本,为什么 install4j 不允许使用通配符?

我正在尝试使用“设置文件的 UNIX 访问模式”内置操作,但发现它有点困难。我基本上需要为我的应用程序执行以下操作:

似乎 install4j 在选择文件/目录时不允许在此操作中使用通配符(它也不允许在文件选择器中进行多选,这使得这特别痛苦)。

我似乎也找不到要在过滤器脚本中使用的绑定安装程序上下文变量或方法。

真的有两个问题: 1. 尝试使用通配符时我是否可能做错了,或者这里不支持它们?2. 如何实现过滤脚本?是否有上下文方法来获取正在执行的文件/目录?

0 投票
2 回答
1978 浏览

install4j - install4j 部署无 jar 文件

我是 install4j 的新手。所以我希望这个问题很容易回答,而不是显而易见的。

我参与了一个 Java 开发项目。我们决定使用 install4j 为我们的客户创建一个不错的安装程序。

现在我有一个 install4j 许可证和测试来创建一个安装程序。我使用 install4j 启动器向导从我的 .jar 文件中创建一个 .exe 文件。

现在的问题:如果我从安装程序中删除 .jar 文件,则 .exe 文件不再起作用。

所以问题是:是否可以使用 install4j 部署没有 .jar 文件的 .exe 文件?

WebStart 在此项目中不是一个选项。

0 投票
0 回答
224 浏览

install4j - 如何从一个用户应用启动中依次调用两个 install4j 启动器?

我有一个用 java 编写的小型远程增量更新程序 (https://github.com/HitTheSticks/alamode),需要在每次执行我的主要软件(也是用 java 编写)之前启动。在与主软件相同的进程空间中运行更新程序将是一个坏主意,因为它将踩踏由主程序拉入类路径的各种文件。

由于更新程序基本上没有依赖关系,我可以简单地为它生成一个带有安全上下文的启动器并在主程序之前运行它。

但是 java 的 exec() 工具不遵循 fork()/exec() 语义。这意味着对于 exec() 的更新程序,启动程序将导致两个JVM 同时运行,所有日志记录 IO 都通过更新程序过滤。呸。

如何确保当用户单击 [我的开始菜单项] 时,它始终无缝运行 [我的更新程序]->[我的程序]?

我看到“com.install4j.api.launcher.ApplicationLauncher”,但它没有指定调用应用程序是否可以退出而不关闭已启动的应用程序。最好是,我根本不会嵌套应用程序......我希望它们按顺序启动。

哦,如果解决方案至少是可移植的,那就太酷了。

0 投票
1 回答
1257 浏览

install4j - 在 install4J 中自动启动

是否有一个集成功能可以让我在 Install4J 安装程序完成后自动启动程序?理想情况下添加“安装完成后开始”按钮。

我看到安装程序的完成表单上有字段“激活后脚本”属性,但不确定是否可以使用。

0 投票
1 回答
52 浏览

install4j - 如何覆盖 sys.programGroup.linkDir?

在 Windows 中,程序组名称可以为空,以便我可以通过编程方式分配名称。但是,“创建程序组操作”中的符号链接目录字段不能留空。有没有其他选择?

顺便说一句,我使用的是 4.2.7 版本。

谢谢

0 投票
2 回答
544 浏览

install4j - install4j 是否具有用于处理 Windows 短 (8.3) 文件名的内置操作/API?

我正在使用 install4j 为需要在属性文件中搜索并替换为安装目录的 Windows 短文件名/路径的应用程序构建安装程序。我已经有一个“修改文本文件”操作,它执行以下操作:

在我的情况下,这通常是 C:\Program Files\InControl。

我需要能够更改 ${installer:sys.installationDir} 的值,因此将“C:\Program Files\InControl”更改为“C:\PROGRA~1\InControl”,尽管这当然可能会因Windows 对此有规定。

我已通读以下网址提供的解决方案:

http://dolf.trieschnigg.nl/eightpointthree/eightpointthree.html

这似乎是一种普遍接受/使用的溶液。install4j 是否有内置的东西来处理这个问题,还是我需要包含这样的东西作为自定义代码?

如果我必须将其作为自定义代码包含在内,如何包含本机 Windows 库?

我在 com.install4j.api.windows.WinFileSystem 或其他任何地方都找不到任何东西。