2011-07-11 108 views
4

我的安裝程序在-post中啓動批處理文件。在32位下工作正常,但是當我安裝64位JVM時,出現此錯誤:NSIS - 無法使用64位Java運行Java應用程序

'java'不被識別爲內部或外部命令,可操作程序或批處理文件。

我的猜測是,由於NSIS是32位,它沒有看到64位環境。如果我從命令提示符運行該批處理文件,它工作正常。

如何獲取64位Java的環境變量並在批處理文件中使用它們?

+2

你是如何啓動這個批處理文件的?請顯示一些NSIS代碼... – Anders

+0

ExecWait'「$ INSTDIR \ my.bat」' – sproketboy

回答

4

我假設這是在64位Windows風格下運行。

64位Windows爲了與32位的兼容性做了「聰明」的事情。 註冊表項和文件搜索路徑會自動轉向。

您正在使用的命令提示符將是一個64位命令提示符。

運行32位命令提示符運行%windir%\ SysWoW64 \ cmd.exe。 您應該能夠在那裏重現您的失敗情況。 32位NSIS將以32位模式啓動批處理文件。

您需要確定在64位下如何找到java.exe文件。 如果你在這裏發佈你的批處理文件,應該有一些合理的明顯變化。

相關問題