簡體   English   中英

無法從Runtime.getRuntime()。exec(..)啟動Steam.exe

[英]Cannot start Steam.exe from Runtime.getRuntime().exec(..)

我一直在嘗試從Java程序內部啟動Steam。

我已經試過了:

StringBuffer output = new StringBuffer();
Process p;
try {
p = Runtime.getRuntime().exec("cmd.exe start \"\" \"C:/Program Files (x86)/Steam/Steam.exe\" -login myid mypassword"); //the string amounts to start "" "C:\Program Files (x86)\Steam\Steam.exe" -login myid mypassword
p.waitFor();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = reader.readLine())!= null) {
    output.append(line + "\n");
}
System.out.println(output);

這無能為力。 我什至沒有任何錯誤。 我的鼠標變成了正在加載的鼠標 ,好像后台正在加載某些東西。 但是實際上什么也沒發生。

雖然,當我嘗試運行taskkill /F /IM Steam.exe ,它們運行正常,實際上我看到Steam關閉了。

我可以通過刪除start來運行它。

Runtime.getRuntime().exec("cmd.exe \"C:/Program Files (x86)/Steam/Steam.exe\" -login myid mypassword");

即使刪除cmd.exe也能正常工作

Runtime.getRuntime().exec("\"C:/Program Files (x86)/Steam/Steam.exe\" -login myid mypassword");

但是我遇到了一個很小的問題,我將在以后再問。 那個小問題是,除非我關閉Steam,否則該進程將不會執行下一條指令。 我嘗試使用cmd.exe / c標志運行它,但這也不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM