• 4487阅读
  • 2回复

[提问]重启QT程序时,遇到错误! [复制链接]

上一主题 下一主题
离线feixiangxtu
 

只看楼主 倒序阅读 楼主  发表于: 2014-02-08
使用下面的方法重启QT程序
void XXX::onRestart()
{    
  qApp->exit(773)
}
main函数改成
int main(int argc, char** argv)
{
  ....    
  int ret = app.exec();    
  if (ret == 773) {      
     QProcess::startDetached(qApp->applicationFilePath(), QStringList());      
     return 0;  
   }    
  return ret;
}
以上程序执行后,进程会退出但是没有重启,同时console会打印出这样一个错误:Did not receive a connection event from the qws server
any help, pls.
离线noidea

只看该作者 1楼 发表于: 2014-02-08
有这个头文件吗?
  1. #include <QWSServer>

talk in code
Qt5.2.1 + MacOSX10.9
离线feixiangxtu

只看该作者 2楼 发表于: 2014-02-20
有这个头文件。
不过有了另外一个方法,是linux下通用的方法,供大家参考交流:

restart.sh  脚本命令 ,有两个参数 。一个是要杀掉的进程名,另一个是启动的程序(也可以是启动程序的脚本)完整路径

脚本内容:
#!/bin/sh

pkill  $1
sleep 3
“$2”

快速回复
限100 字节
 
上一个 下一个