[問題] 怎麼用java來開啟外部的遊戲?

看板java作者 (阿昌)時間15年前 (2010/03/24 18:11), 編輯推噓0(005)
留言5則, 2人參與, 最新討論串1/2 (看更多)
請問怎麼用Java啟動世紀帝國的遊戲?因為我的方法有時候會顯示錯誤訊息。 我的做法是這樣的: 測試過如果用bat檔這樣寫可以成功開啟遊戲: cd "C:\Program Files\Age of Empires II\Age of Empires II\age2_x1" start AGE2_X1.EXE 因為不知道Java呼叫exec時要怎麼執行「cd xxx」的命令,所以把命令改成 「cmd /c "cd 路徑&&start AGE2_X1.EXE"」。 所以我的程式方法如下,也就是程式按下「開啟遊戲」的JButton後,就會呼叫下面的方 法↓ //開啟遊戲 public void startGame(){ try{ String cmd ="cmd /c \"cd C:\\Program Files\\Microsoft Games\\Age of Empires II\\Age of Empires II\\age2_x1&&start AGE2_X1.EXE\""; Runtime.getRuntime().exec(cmd); }catch(Exception e){textarea.append("\n開始遊戲時發生錯誤!\n"+e);} } 每次遊戲都可以成功執行,但有時候會出現錯誤訊息,有時候不會,為什麼會這樣呢? 下面是顯示的錯誤訊息(第一個#字也是錯誤訊息的一部分): # # An unexpected error has been detected by Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d0c6fab, pid=912, tid=3904 # # Java VM: Java HotSpot(TM) Client VM (1.6.0_03-b05 mixed mode, sharing) # Problematic frame: # C [awt.dll+0x16fab] # # An error report file with more information is saved as hs_err_pid912.log # # If you would like to submit a bug report, please visit: # http://java.sun.com/webapps/bugreport/crash.jsp # 請問有人知道這是什麼意思嗎?為什麼會發生錯誤啊? 還是有人知道比較正確和安全執行遊戲的方法應該怎麼寫(或修正)嗎@@? 謝謝大家=v= -- ※ 發信站: 批批踢實業坊(ppt.cc) ◆ From: 361.24.253.7 ※ 編輯: jinn 來自: 163.24.253.7 (03/24 18:20)

03/24 18:26, , 1F
try google: "EXCEPTION_ACCESS_VIOLATION"
03/24 18:26, 1F

03/24 19:01, , 2F
我可不可以不要問為什麼了,改問要怎麼解決?=.=或怎樣開遊戲
03/24 19:01, 2F

03/24 19:03, , 3F
而不發生錯誤。 謝謝=v=
03/24 19:03, 3F

03/24 19:16, , 4F
重裝最新版本的 JDK 試試
03/24 19:16, 4F

03/24 21:38, , 5F
謝謝tkcn大,所以只要安裝最新版就好囉,程式碼沒錯的意思囉XD
03/24 21:38, 5F
文章代碼(AID): #1BgULeWu (java)
文章代碼(AID): #1BgULeWu (java)