为什么 install4j 有时在语言选择对话框后启动单独的进程,有时则不然?

问题描述 投票:0回答:1

我正在从事自动化 UI 测试。

当我在物理 Win 11 Pro 计算机上启动安装程序时,在初始语言选择对话框后会创建一个单独的进程。

在 Hyper-V 虚拟机(Win 11 企业评估映像)上启动安装程序时,只有一个进程。

我可以处理这两种情况,但我想了解原因,以及如何使其保持一致,以便我可以使用相同的代码在我的开发计算机上进行测试以及在 Hyper-V VM 中运行时。

我尝试过直接启动安装程序(右键单击并以管理员身份运行)、从命令提示符(以管理员身份运行)、从 Eclipse(以管理员身份运行)或通过带有

-h
标志的 PsExec (sysinternals) 启动安装程序。

我认为这与安装4j升降机构的方式有关。

虚拟机的另一个区别是它还没有添加到域中(此时只是概念证明),并且用户是本地用户而不是域用户(但它是本地管理员组的一部分) .

详情:

enter image description here

点击确定后,向导UI出现在第二个进程中:

enter image description here

java process integration-testing install4j gui-testing
1个回答
0
投票

如果所选区域设置与系统区域设置不同,安装程序将重新启动。

为了避免这种情况,您有两种选择:

  1. 使用命令行参数启动安装程序

     -Duser.language=de -Dinstall4j.language=de
    

    在这种情况下,不会显示语言选择对话框。

  2. 使用命令行参数启动安装程序

     -Dinstall4j.noSecondaryProcess=true
    

    在这种情况下,会显示语言选择对话框,但不会执行重新启动。相反,区域设置是在同一进程中设置的,这具有重新启动可以避免的一些缺点。我没有这些缺点的列表,但用户界面中可能存在格式或消息不一致的情况。

© www.soinside.com 2019 - 2024. All rights reserved.