Запуск файла Visual C ++ .exe в разделе Обработка. - PullRequest
0 голосов
/ 05 мая 2018

Я пытаюсь запустить освобожденный .exe-файл моего проекта Virtual C ++ с помощью Processing. Я пробовал launch () и exec (), оба работают для любого другого файла .exe или разных типов файлов. Я использую код ссылки для запуска ().

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:, я даже создал командный файл (.bat) с помощью Processing.

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 () ничего не делают, когда я использую их для той же цели. Я пытался понять это в течение 2 дней, так что было бы здорово, если бы кто-то смог избавить меня от моих страданий. Заранее спасибо.

1 Ответ

0 голосов
/ 05 мая 2018

Вот линия, которая работала для меня. В первом опубликованном коде я использовал exec () вместо launch ().

exec(new String[] {"cmd", "/c","start","/w", "C:\\Users\\Ozan\\Documents\\Processing\\PlateRecognition\\x64\\Release\\myfile.bat"});
...