выход из пакетного файла с использованием кода Java - PullRequest
1 голос
/ 12 января 2009

У меня такой пример кода.

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author padmaja
 */

import java.io.*;
class Test{
  public static void main(String arg[]){
    try{
      String command = "cmd /C start C:/excel.bat";
      Runtime rt = Runtime.getRuntime();
      Process pr = rt.exec(command);  
    }catch (IOException e) {
      e.printStackTrace();
    }
  }
}

Я открываю лист Excel, используя приведенный выше код.

Проблема в том, что если использовать нить для открытия листа Excel каждые 15 минут, тогда будет отображаться несколько листов Excel. Я хочу закрыть запуск командного файла из самого кода выше.

Заранее спасибо

Ответы [ 3 ]

2 голосов
/ 12 января 2009

Как только лист Excel будет открыт, конечный пользователь будет взаимодействовать с ним, верно? Как вы узнаете, что это нормально, чтобы закрыть его? Если вы запускаете Excel только для некоторых макросов, работающих под нагрузкой, вы можете выйти из этого макроса.

0 голосов
/ 12 января 2009

В моем проекте такая же проблема.

Вы можете написать DLL, которая может открывать и закрывать запущенные процессы по своему усмотрению. В C ++ вы можете обрабатывать процессы, как вы описали. Вы получаете идентификатор процесса, где вы можете идентифицировать запущенные процессы. Насколько я знаю, вы можете только завершить процесс, но не завершить его, попросив пользователя закрыть окно.

0 голосов
/ 12 января 2009

Один из вариантов - использовать команду taskkill (http://technet.microsoft.com/en-us/library/bb491009.aspx), чтобы завершить процесс. Конечно, это просто завершит процесс, поэтому вы не сможете выполнить очистку / сохранение и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...