Я собираю некоторые файлы .py для использования в основном как независимые от платформы файлы .bat для запуска gzdoom
с определенными аргументами.
Ожидаемое поведение основано на встроенной оболочке:
Если я запускаю ..\gzdoom411\gzdoom.exe
в cmd, открывается окно с графическим интерфейсом, запрашивающее у меня iwad.
Если я запускаю ..\gzdoom411\gzdoom.exe -iwad ..\wads\DOOM2.WAD
вместопредложив мне iwad, он загружается прямо в игру.
В Python реальность такова:
print(f"exepath is {exepath}")
print(f"args is {args}")
os.execv(exepath, args)
приводит к выводу
exepath is ..\gzdoom411\gzdoom.exe
args is ['-iwad', '..\\wads\\DOOM2.WAD']
но программа, которая работает, работает так, как будто она не получает аргументы: после печати этих сообщений она открывает окно с графическим интерфейсом, чтобы запросить у меня iwad, как будто я запустил его без передачи аргумента -iwad
.
Я делаю что-то не так, как я называю execv
?