Итак, позвольте мне начать с того, что я прошел через все вопросы и ответы, которые я могу найти, как на сайте, так и за его пределами, и я все еще бью кирпичную стену.
Моя программа:
Все, что делает моя программа, это запускает командный файл в том же каталоге, что и моя программа.
Код:
try {
Process p = Runtime.getRuntime().exec("cmd /c start startclient.bat");
} catch (IOException ex) {
Logger.getLogger(MCPFrame.class.getName()).log(Level.SEVERE, null, ex);
}
}
Когда я выполняю код, я получаю окно с предупреждением:
Windows cannot find 'startclient.bat'. Make sure you typed the name correctly, and then try again.
Если я укажу каталог с помощью:
Process p = Runtime.getRuntime().exec("cmd /c start C:\\Folder\\startclient.bat");
Я получу:
The system cannot find the path specified.
Press any key to continue . . .
C:\Windows\system32>
Так что мое необразованное предположение таково, что когда я вызываю командный файлчерез Java он начинается в "C: \ Windows \ system32>", но когда я просто дважды щелкаю на командном файле, он начинается с локального каталога.
Как это исправить?
: (
PS Кикер, у меня на самом деле была эта штука в прошлом году, но по какой-то причине она больше не будет себя вести.
PPS Я использую Win 7, и все обновлено.