Нужно запустить команду, не открывая подсказку DOS - PullRequest
0 голосов
/ 13 сентября 2011

Я использовал следующий код, чтобы сделать папку не удаляемой в моем проекте Java. Работает нормально. Когда я создаю exe своего проекта, подсказка dos не исчезает.

cmd.exe /c start  icacls "folder name" /e /c /d %username%

Я также пытался без открытия DOS. Но это не работает.

icacls ONGX32/winkrl /e /c /d %username%

Ответы [ 4 ]

1 голос
/ 13 сентября 2011

Вместо этого используйте:

cmd /c icacls "folder name" /e /c /d %username%

start - это то же самое, что и cmd /c, поэтому вам не нужны оба.

0 голосов
/ 14 сентября 2011

Я нашел простой способ. Созданный временный файл .bat состоит из этой команды. Использовал этот .bat файл. Не открылась командная строка.

0 голосов
/ 14 сентября 2011

В командной строке команда exit закрывает ее.

Вы можете запустить несколько команд в одной строке , используя && разделитель команд.

Должно быть что-то вроде этого:

cmd /c icacls "folder name" /e /c /d %username% && exit
0 голосов
/ 13 сентября 2011

Переменная %username% заменяется значением cmd.exe.

Вам нужно получить его с System.getenv("username") и заменить его самостоятельно в командной строке.

Редактировать . Вам также может понадобиться использовать полный путь к icacls.exe .

...