можно ли закрыть окно cmd после os.execute в lua
Запускаю игру такой командой:
os.execute(' ""C:/Program Files (x86)/Warcraft III/_retail_/x86_64/Warcraft III.exe" -launch" ')
Проблема в том что окно cmd остается открытым пока не закрыть его вручную или саму игру.
Пробовал решить через добавление "start"
os.execute(' "start "C:/Program Files (x86)/Warcraft III/_retail_/x86_64/Warcraft III.exe" -launch" ')
Но это приводит к ошибке: Не удается найти -launch
Видимо он думает что -launch не параметр запуска а файл который надо открыть.
Есть ли какие-либо варианты решения? Может делаю что-то не так, или есть другой метод, или можно запустить игру через lua без os.execute.
Ответы (1 шт):
Попробуй выполнить так:
os.execute('start "C:/Progra~1/Warcra~1/_retail_/x86_64/Warcraft III.exe" -launch')
В командной строке Windows cокращают пути к файлам до формата MS-DOS 8.3, если длина каталога превышает восемь символов. Если каталогов несколько, то нужный определяется порядковым номером Progra~1 или Progra~2.
Кавычки вокруг полного имени исполняемого файла в данном случае обязательны, поскольку в нём содержится пробел - Warcraft III.exe.
В общем случае всё нормально выполняется и без кавычек:
os.execute('start notepad.exe %userprofile%/Desktop/new.txt')