Найти - Пользователи
Полная версия: subprocess. Не прерывный контроль за выполнением программы
Начало » Python для новичков » subprocess. Не прерывный контроль за выполнением программы
1
VIRTOK
Цель. Не прерывный контроль за выполнением программы
На данный момент получилось получить статус процесса в момент его завершения
 import subprocess
def start_programm(url_for_start_programm):
    try:
        program = url_for_start_programm
        process = subprocess.Popen(program)
        code = process.wait()
        print(code) # 0
    except Exception as ex:
        print ("Ошибка при запуске программы")
        print(ex)
        return False
    return True
start_programm('notepad.exe')
JOHN_16
VIRTOK
code = process.wait()
ну вот здесь вы говорите “Подожди окончания выполнения программы и верни код завершения программы”
Видимо вам не надо этого делать. К то му же вы не люхяснили что значит контроль? ЧТо вы хотите конкретно? Но технически все ответы есть в документации к модулю subprocess
VIRTOK
Мне нужно постоянно проверять работает ли в данный момент программа, которую я запустил
doza_and
VIRTOK
Мне нужно постоянно проверять работает
Работает, это значит выполняет свои функции. Может получиться что вы жмете кнопку а нужного эффекта нет. Или например программа зациклилась. Такое проверить принципиально нельзя.

а так первое что есть
https://docs.python.org/3/library/subprocess.html
“Popen.poll()
Check if child process has terminated. Set and return returncode attribute. Otherwise, returns None.”
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB