Как проверить завершение игры из Steam в Qt?
У меня есть QListWidget в котором хранится путь к файлу. После запуска игры через startProcess->start(Path), которая связана со Steam, из QListWidget, то QProccess::State становится NotRunning. Именно перед тем, как сам Steam начинает подгружать игру. То есть QProcess завершается. И игра запускается, так сказать, без связки с startProcess -> start() Посоветуйте как можно выполнить проверку на наличие данного процесса в самом компьютере, чтобы startProcess не изменялся на NotRunning,а был также привязан к startProcess
Что выдает qDebug():
Приложение запустилось!
QProcess::Running Pid: 24748
//Что выдает перед тем как запускается Steam:
"Process finished successfully"
connect(startProcess,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(isExitProcess()));
void Launcher::launchGame()
{
int index = listWidget->currentRow();
if (index == -1) return;
PathFile=new QString;
*PathFile = HideListWidget->item(index)->text();
nameStartProcess = PathFile;
if (PathFile->isEmpty()) return;
startProcess->start(*PathFile);
if (startProcess->waitForStarted())
{
int pid = startProcess->processId();
qDebug()<<"Приложение запустилось!\n"<<startProcess->state()<<" Pid: "<<pid<<Qt::endl;
}
//Сам слот закрытия приложения
void Launcher::isExitProcess()
{
//if (startProcess->exitStatus() == QProcess::NormalExit) пробовал так
if (startProcess->atEnd())
{
qDebug("Process finished successfully");
qDebug()<<"name start = "<<*PathFile<<Qt::endl;
}
else{
qDebug("Process finished with error - ");
qDebug()<<startProcess->state()<<Qt::endl;
}
}