Russian Qt Forum

Qt => Общие вопросы => Тема начата: Unnamed_Hero от Май 31, 2008, 21:24



Название: как получить список живых процессов, запущенных с помощью QProcess::start()?
Отправлено: Unnamed_Hero от Май 31, 2008, 21:24
Собственно говоря, возможно ли это? МОя программа запускает несколько консольных утилит... хотелось бы как-то об их судьбе подумать :)


Название: Re: как получить список живых процессов, запущенных с помощью QProcess::start()?
Отправлено: Sergeich от Июнь 01, 2008, 13:21
Уточни задачу. Тебе нужно чтобы список был доступен после рестарта проги, к-ая запускает консольные утилиты? Или только пока прога работает? Или вообще возможность получать этот список из любого процесса?
В общем случае лучше всего написать отдельный сервак, который будет запускаться утилиты и следить за ними.


Название: Re: как получить список живых процессов, запущенных с помощью QProcess::start()?
Отправлено: Steven_Orko от Июнь 02, 2008, 16:48
В общем случае лучше всего написать отдельный сервак, который будет запускаться утилиты и следить за ними.
Только так, и никак по-другому, если кросплатформенно.

Или напрямую читать список активных процессов через API ОС и искать знакомые.


Название: Re: как получить список живых процессов, запущенных с помощью QProcess::start()?
Отправлено: Alex03 от Июнь 03, 2008, 06:17
Собственно говоря, возможно ли это? МОя программа запускает несколько консольных утилит... хотелось бы как-то об их судьбе подумать :)
А в чём проблема то?
Если запускается через QProcess::start(), значит эти QProcess у Вас живые, соответственно ничего не мешает законнектить соответствующие сигналы (error, finished, started, stateChanged) куда надо. Ну или на крайняк просто проверять QProcess::ProcessState QProcess::state().