Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 31, 2010 00:11:59

Dr.Livsi
От:
Зарегистрирован: 2010-02-15
Сообщения: 192
Репутация: +  3  -
Профиль   Отправить e-mail  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

Доброго всем времени суток!
Помогите, пожалуйста, разобраться со следующей задачей:
Есть программа, по ходу работы которой необходимо запускать exe-файл с рядом параметров. При этом нужно дождаться сигнала об успешном выполнении exe-файлом задачи либо об ошибке. Как это можно реализовать?



Офлайн

#2 Авг. 31, 2010 00:55:51

CryptSpirit
От:
Зарегистрирован: 2010-05-05
Сообщения: 88
Репутация: +  0  -
Профиль   Отправить e-mail  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

subprocess.Popen(,stdout=subprocess.PIPE).communicate()

test.exe ваша программа (путь к ней)
-key он же ключ он же параметр
Сколько ключей (параметров) столько и элементов списка (+ конечно имя самой программы)



Отредактировано (Авг. 31, 2010 00:58:59)

Офлайн

#3 Авг. 31, 2010 10:05:05

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

Ну зачем же так сложно?
os.system удовлетворяет всем требованиям.



Офлайн

#4 Авг. 31, 2010 22:53:06

CryptSpirit
От:
Зарегистрирован: 2010-05-05
Сообщения: 88
Репутация: +  0  -
Профиль   Отправить e-mail  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

ZZZ
Ну зачем же так сложно?
Dr.Livsi
нужно дождаться сигнала об успешном выполнении exe-файлом задачи либо об ошибке



Офлайн

#5 Сен. 2, 2010 11:02:06

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

http://docs.python.org/library/os.html#os.system
On Unix, the return value is the exit status of the process encoded in the format specified for wait(). Note that POSIX does not specify the meaning of the return value of the C system() function, so the return value of the Python function is system-dependent.

On Windows, the return value is that returned by the system shell after running command, given by the Windows environment variable COMSPEC: on command.com systems (Windows 95, 98 and ME) this is always 0; on cmd.exe systems (Windows NT, 2000 and XP) this is the exit status of the command run; on systems using a non-native shell, consult your shell documentation.
Мдя… Признаю свою ошибку, мой вариант удовлетворяет требованиям ТС только под *nix. Никогда бы не подумал, что и тут винда какой-то бред выделывает…



Офлайн

#6 Сен. 2, 2010 12:12:26

alexx11
От:
Зарегистрирован: 2010-05-13
Сообщения: 208
Репутация: +  0  -
Профиль   Отправить e-mail  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

Однажды тоже когда стоял перед выбором что использовать system или Popen под Федорой, остановился на втором варианте, а причину уже не вспомню. Хотя надо было тупо запустить фийлик и дождатся когда он выполнится.



Офлайн

#7 Сен. 6, 2010 22:39:35

Dr.Livsi
От:
Зарегистрирован: 2010-02-15
Сообщения: 192
Репутация: +  3  -
Профиль   Отправить e-mail  

Запуск исполняемого файла в винде (*.exe) с передачей ему параметров.

Спасибо за ответы. К сожалению, пока не могу на практике опробовать - слишком много работы навалилось, но, думаю, сложностей не возникнет. :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version