運行C/C++的exe我試圖運行我c/c++ .exe
從日食RCP
(Java API)。無法從Eclipse RCP的
代碼:
package com.jkt.rcp.texteditor.handlers;
import java.io.IOException;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
//import com.jkt.runner.utils.Test;
public class RecordHandler extends AbstractHandler {
private RecordingThread recordingThread;
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
System.out.println("inside RecordHandler...");
recordingThread = new RecordingThread();
recordingThread.start();
return null;
}
}
和RecordingThread.java
代碼:
package com.jkt.rcp.texteditor.handlers;
import java.io.IOException;
public class RecordingThread extends Thread {
private String file = "C:\\workspace\\JProAcceptanceBot\\Record.exe";
public void run() {
System.out.println("inside Run()...");
try {
Process proc = Runtime.getRuntime().exec(file);
} catch (IOException e) {
System.out.println("IOException:"+e);
e.printStackTrace();
}
}
}
其實RecordHandler.java
點擊蝕RCP
按鈕後執行。
但只要我點擊按鈕,c/c++ exe
沒有反應,我的Java程序停止響應。
否則,如果我在我的eclipse中運行這個exe
,它運行良好。
這c/c++ exe
已通過使用Eclipse CDT和Cygwin製造。
請看看轉換成代碼和建議?
我曾經嘗試過的東西,但沒有luck.Actually我在我的本地代碼生成一個文本文件,一些材料寫入該文本文件。 – Vishal 2009-12-14 10:08:47
不管什麼.exe,這個問題都存在。你在調試器中看過proc.GetInputStream()的輸出嗎? – 2009-12-14 12:29:19
Thanx jilles。這個問題已經被你的建議解決了。實際上我是在用proc.GetInputStream()做一些錯誤處理。現在我的c/C++ exe在RCP中運行正常。 – Vishal 2009-12-16 09:32:46