Я делаю следующее, чтобы начать процесс и ждет его завершения (я намеренно избегаю использования SIGNAL/SLOTS в этом случае).QProcess state() всегда возвращает RUNNING
QProcess *myProcess = new QProcess();
QString program = "test.exe";
QStringList args;
myProcess->start(program, args);
myProcess->waitForStarted();
while(myProcess->state() == QProcess::Running)
{
// Do other things...
}
Я могу проверить, что test.exe завершает работу. Но состояние процесса по какой-то причине всегда QProcess :: Running. Я использую Qt 4.8.2 в Windows.
Добавление proc-> waitForFinished (1); в замкнутом цикле исправлена проблема. – Paul