Я пытаюсь создать пользовательский интерфейс и запустить пакетный файл, который перезапустит службу, работающую в фоновом режиме, просто щелкнув пункт меню. Я могу сделать меню и добавить пункт меню так:
JMenu menu = new("menu");
JMenuItem restart_service= new JMenuItem("Restart service");
menu .add(restart_service);
Затем я добавил слушателя в пункт меню для запуска командного файла:
restart_service.addActionListener (new ActionListener(){
@Override
public void actionPerformed(ActionEvent ae) {
openWebPage(
"file://path to bat file/batchfile.bat");
}
public void openWebPage(String url) {
try {
java.awt.Desktop.getDesktop().browse(java.net.URI.create(url));
} catch (java.io.IOException e) {
System.out.println(e.getMessage());
}
}
});
Тем не менее, каждый раз, когда я пытаюсь это сделать, появляется окно cmd и выдается «Доступ запрещен». Хотя я изменил настройку для запуска файла без прав администратора. Не уверен, как это исправить или если есть способ извинить пакетные файлы от имени администратора, нажав пункт меню. Любая помощь будет оценена.