os.execv без args аргумента

Я хочу заменить текущий процесс новым с помощью os.execv, это хорошо работает, если у Вас нет аргументов.

Как я могу назвать это, даже если у меня нет аргументов для передачи процессу, который я хочу запустить?

# Works fine, unless the arguments tuple wouldn't exist or be empty
os.execv('process.exe', ('arg1', 'arg2'))
6
задан Felix Kling 1 August 2010 в 22:51
поделиться

2 ответа

Хорошо, спросив в IRC, они указали, почему это работает именно так.

Первым аргументом (arg0) обычно является имя файла того, что вы выполняете (например, sys.argv [0]), поэтому первым аргументом всегда должно быть имя файла.

Это объясняет, почему аргументы не являются необязательными. В IRC сказали, что arg0 - это то, что приложение будет считать своим именем.

5
ответ дан 8 December 2019 в 14:39
поделиться

Это работает для меня

os.execv('process',())

Вы уверены, что ваш процесс работает без аргументов?

Или попробуйте execl

os.execl('process')
1
ответ дан 8 December 2019 в 14:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: