2012-03-23 90 views
6

我想在安装完成后开始成功安装Java程序。我知道如何做到这一点原则:如何运行隐藏控制台窗口的批处理文件?

[Run] 
FileName: "{app}\LaunchApp.bat"; Description: {cm:LaunchApp}; Flags: nowait postinstall skipifsilent 

LaunchApp.bat:

start javaw -jar MyJar.jar Main 

这样,控制台窗口弹出一小会儿,这是不是很漂亮。使用链接可以避免这种情况。但是,我似乎无法执行在[Run]部分中的[Icon]中创建的链接。

任何建议如何解决这个问题?

+1

由于它是显示窗口的批处理文件/命令解释程序,因此应该罚款一种方法来停止显示(因为它在手动运行时会执行相同的操作)。 TLama说,为了将它隐藏在Inno中,使用'runhidden'。 – Deanna 2012-03-23 10:56:36

+1

这是你的答案!我通过创建符号链接来做到这一点!这样,命令提示符不会显示出来。正如我的问题所述,我无法在[Run]部分中运行符号链接 – mort 2012-03-23 11:30:05

+0

erm,符号链接与快捷方式/ lnk文件非常不同。 – Deanna 2012-03-23 12:19:40

回答

15

尝试添加runhidden标志。来自参考:

如果指定了此标志,它将在隐藏的 窗口中启动程序。切勿在执行可能会提示用户输入的 的程序时使用此标志。

因此,这应该可以解决你的问题:

[Run] 
FileName: "{app}\LaunchApp.bat"; Description: {cm:LaunchApp}; Flags: nowait postinstall runhidden skipifsilent 
1

你可以完全避免该批处理文件并运行java.exe适当的参数。 但这并不能帮助用户正常运行批处理文件时出现的窗口。