2012-03-23 46 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適當的參數。 但這並不能幫助用戶正常運行批處理文件時出現的窗口。