Невозможно запустить внешнюю программу из Eclipse Neon
Я знаю, что таких вопросов много, но они не очень помогли.
Я пытаюсь создать программу, которая печатает документы (конкретный документ), поэтому я хочу "запустить" папку, в которой она находится, щелкнуть документ и нажать CTRL+P. Поэтому я попытался просто с помощью Runtime
:
Process p = Runtime.getRuntime().exec("C:/Users/Rasmus/Desktop/Notepad.lnk");
и я получил ошибку:
java.io.IOException: не удается запустить программу "C:\Users\iNsaniTy\Desktop\Notepad.lnk": ошибка CreateProcess =193, %1 не является допустимым приложением Win32
А потом ProcessBuilder
(никогда не использовал его раньше, не знаю что это)
new ProcessBuilder("C:/Users/Rasmus/Desktop/Notepad.lnk").start();
И я получил ту же ошибку. Я использовал Runtime
Метод до и он работал. Я не знаю, имеет ли это значение, но с тех пор я скачал последнюю версию Eclipse (Eclipse Neon). Есть ли у доброй души какие-то решения?
1 ответ
@J Doe, .lnk - это краткая ссылка на сам исполняемый файл. Ваше исключение ясно упоминает об этом.
Разрешение будет указывать путь к исполняемому файлу. Как вы можете проверить путь к исполняемому файлу.
Right CLick on .lnk > Open Properties > Path in the Target will be the actual path of the executable.
Найдите путь цели и используйте его в своем коде для ProcessBuilder или RUntime exec.