崩溃后是否可以重启qt应用程序?就像那些将自行重启的Windows服务一样。如果是的话,我怎么能这样做?我尝试过这样的代码:
WebDriverWait waiting = new WebDriverWait(fireDriver, 15, 100);
WebElement to=waiting.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@id=':1h4']")));
但它不起作用...... 我现在该怎么办?
答案 0 :(得分:2)
创建另一个运行应用程序的qt应用程序。
#include <QApplication>
#include "QProcess"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QProcess aProcess;
QString exe = "Your process name with exact path";
QByteArray myOut;
while(1)
{
aProcess.start(exe);
//aProcess.waitForStarted();
//myOut = aProcess.readAllStandardOutput();
//printf("%s",myOut.constData());
aProcess.waitForFinished(-1);
//QString output(aProcess.readAllStandardOutput());
myOut = aProcess.readAllStandardOutput();
printf("%s",myOut.constData());
}
enter code here
return a.exec();
}
此程序将在崩溃或关闭时重新启动您的应用
答案 1 :(得分:0)
你可以使用我的开源库: https://marketplace.qt.io/products/main-loop-wdt-for-qt-qml
它是主循环的看门狗定时器,仅在主循环冻结(双互斥锁、无限循环等)时起作用,但在应用程序崩溃时不起作用。