我正在尝试使用Processing运行我的Virtual C ++项目的已发布.exe文件。我尝试了launch()和exec(),它们都适用于任何其他.exe文件或不同的文件类型。我正在使用Processing参考代码进行启动()。
void setup() {
size(200, 200);
}
void draw() {
// draw() must be present for mousePressed() to work
}
void mousePressed() {
println("Opening Process_4");
launch("C:\\Users\\User\\Documents\\Processing\\ProjectFile\\x64\\Release\\ProjectFile.exe");
}
我尝试过更改斜线,将我的Visual C ++文件移动到C:或D:,我甚至通过使用Processing创建了一个批处理文件(.bat)。
void setup() {
size(200, 200);
}
void draw() {
// draw() must be present for mousePressed() to work
}
void mousePressed() {
PrintWriter output=null;
output = createWriter("myfile.bat");
output.println("cd "+sketchPath("C:\\Users\\User\\Documents\\Processing\\ProjectFile\\x64\\Release"));
output.println("start ProjectFile.exe");
output.flush();
output.close();
output=null;
launch(sketchPath("C:\\Users\\User\\Documents\\Processing\\ProjectFile\\x64\\Release")+"myfile.bat");
}
无论我做什么,即使.exe和.bat文件在双击它们时工作正常,当我将它们用于同一目的时,launch()或exec()也不会做任何事情。我一直试图弄明白这两天,所以如果有人能够让我摆脱困境,那将是一件好事。提前致谢。
答案 0 :(得分:0)
以下是适用于我的线路。我在我发布的第一个代码中使用了exec()而不是launch()。
exec(new String[] {"cmd", "/c","start","/w", "C:\\Users\\Ozan\\Documents\\Processing\\PlateRecognition\\x64\\Release\\myfile.bat"});