Can';t在安装完成后从install4j启动器运行应用程序

Can';t在安装完成后从install4j启动器运行应用程序,install4j,Install4j,我已经完成了安装程序的核心功能,但需要添加用户在安装完成后启动应用程序的功能 我已在安装过程的早期获得提升权限,但安装程序尝试启动应用程序时失败,并显示以下错误日志: java.io.IOException: Cannot run program "C:\Program Files\abc\xyz\xyz 1.2.exe" (in directory "C:\Program Files\abc\xyz"): CreateProcess error=740, The requested opera

我已经完成了安装程序的核心功能,但需要添加用户在安装完成后启动应用程序的功能

我已在安装过程的早期获得提升权限,但安装程序尝试启动应用程序时失败,并显示以下错误日志:

java.io.IOException: Cannot run program "C:\Program Files\abc\xyz\xyz 1.2.exe" (in directory "C:\Program Files\abc\xyz"): CreateProcess error=740, The requested operation requires elevation
at java.base/java.lang.ProcessBuilder.start(Unknown Source)
at java.base/java.lang.ProcessBuilder.start(Unknown Source)
at com.install4j.runtime.installer.helper.launching.LaunchHelper.launchOnWindows(LaunchHelper.java:387)
at com.install4j.runtime.installer.helper.launching.LaunchHelper.launchApplicationDirectly(LaunchHelper.java:151)
at com.install4j.runtime.installer.helper.launching.LaunchHelper.access$000(LaunchHelper.java:33)
at com.install4j.runtime.installer.helper.launching.LaunchHelper$2.fetchValue(LaunchHelper.java:110)
at com.install4j.runtime.installer.helper.launching.LaunchHelper$2.fetchValue(LaunchHelper.java:107)
at com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionWrapper(HelperCommunication.java:367)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.access$200(HelperCommunication.java:30)
at com.install4j.runtime.installer.helper.comm.HelperCommunication$1.run(HelperCommunication.java:96)
Caused by: java.io.IOException: CreateProcess error=740, The requested operation requires elevation
at java.base/java.lang.ProcessImpl.create(Native Method)
at java.base/java.lang.ProcessImpl.<init>(Unknown Source)
at java.base/java.lang.ProcessImpl.start(Unknown Source)
... 11 more
java.io.IOException:无法运行程序“C:\program Files\abc\xyz\xyz 1.2.exe”(在目录“C:\program Files\abc\xyz”中):CreateProcess error=740,请求的操作需要提升
位于java.base/java.lang.ProcessBuilder.start(未知源)
位于java.base/java.lang.ProcessBuilder.start(未知源)
位于com.install4j.runtime.installer.helper.launching.LaunchHelper.launchOnWindows(LaunchHelper.java:387)
在com.install4j.runtime.installer.helper.LaunchHelper.launchApplicationDirectly(LaunchHelper.java:151)上
位于com.install4j.runtime.installer.helper.launching.LaunchHelper.access$000(LaunchHelper.java:33)
位于com.install4j.runtime.installer.helper.launching.LaunchHelper$2.fetchValue(LaunchHelper.java:110)
位于com.install4j.runtime.installer.helper.launching.LaunchHelper$2.fetchValue(LaunchHelper.java:107)
位于com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
位于com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionWrapper(HelperCommunication.java:367)
在com.install4j.runtime.installer.helper.comm.HelperCommunication.access$200(HelperCommunication.java:30)
在com.install4j.runtime.installer.helper.comm.HelperCommunication$1.run(HelperCommunication.java:96)
原因:java.io.IOException:CreateProcess error=740,请求的操作需要提升
位于java.base/java.lang.ProcessImpl.create(本机方法)
位于java.base/java.lang.ProcessImpl(未知源)
位于java.base/java.lang.ProcessImpl.start(未知源)
... 还有11个

有什么想法吗?

如果这是由启动器生成的,请尝试在启动器向导的“可执行信息->Windows清单选项”步骤中选择“作为调用者”。“运行可执行文件”操作将提供特权。

这很奇怪,因为stacktrace显示进程正由提升的助手进程启动,因此它具有提升的特权。但是,为什么要以提升的权限启动启动器?通常,您以用户身份启动可执行文件。这是通过将“运行可执行文件或批处理文件”操作的“操作提升类型”属性更改为“不提升”来完成的。我尝试在不提升权限的情况下启动可执行文件,但得到了完全相同的错误。如果从终端启动它会怎么样?这个可执行文件在其清单中是否需要提升权限?如果我从终端启动它,它确实需要管理权限。是的!这解决了我的问题。您想添加此作为答案,以便我可以接受它吗?