J'essaie de lancer mon c/c++ .exe
depuis l'eclipse RCP
(Java API).Impossible d'exécuter c/C++ exe à partir d'eclipse RCP
code:
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;
}
}
et le code de RecordingThread.java
est:
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();
}
}
}
En fait, après avoir cliqué sur RecordHandler.java
exécute un bouton éclipse RCP
.
Mais dès que je clique sur le bouton, c/c++ exe
ne répond pas et mon programme Java cesse de répondre.
Sinon, si je lance ce exe
à l'intérieur de mon éclipse, cela fonctionne bien.
Cette c/c++ exe
a été faite en utilisant Eclipse CDT et Cygwin.
S'il vous plaît jeter un oeil dans le code et suggérer?
J'avais essayé le truc mais pas de chance. En fait, mon code natif génère un fichier texte et écrit du matériel dans ce fichier texte. – Vishal
Ce problème existe indépendamment de ce que fait le fichier .exe. Avez-vous regardé la sortie de proc.GetInputStream() dans un débogueur? –
Thanx jilles.Le problème a été résolu avec votre suggestion.En fait, je faisais une mauvaise manipulation avec proc.GetInputStream(). Maintenant, mon c/C++ exe fonctionne bien à partir de RCP. – Vishal