1.需求

须要实现程序操作过程中的又一次启动,即常常说的又一次登录功能

2.解决

在main函数中检測exec的返回值决定是关闭还是重新启动。使用注冊函数atexit(relogin)来实现这个功能

3.代码

main.cpp

#include "myrelogin.h"
#include <QtWidgets/QApplication>
#include <QProcess> QString gstrFilePath = "";
void relogin(void); int main(int argc, char *argv[])
{
QApplication a(argc, argv);
gstrFilePath = QCoreApplication::applicationFilePath(); myrelogin w;
w.show();
int nret = a.exec();
if (nret == 2)
{
atexit(relogin);
}
return nret;
} //这里启用又一次启动一个新的演示样例
void relogin()
{
QProcess process;
process.startDetached(gstrFilePath);
}

函数调用

#include <QtCore/QCoreApplication>
qApp->exit(2);

4.备注

1.atexit函数比較实用mfc上也能够採用这个做又一次登录

2.在win7+vs2010+qt5.40编译执行正常

最新文章

  1. MySql踩坑总结
  2. tomcat 应用部署方式(转)
  3. 几款开源的hybird移动app框架分析
  4. *HDU3367 最小生成树
  5. Python模块和包
  6. Python 对象的引用计数和拷贝
  7. ES 聚合函数
  8. SPOJ #10657. LOGIC (riddle)
  9. 原生javascript写的侧栏跟随效果
  10. 移动UI自动化-Page Objects Pattern
  11. c#中使用easyUI的DataGrid组件
  12. EA强大功能之代码凝视
  13. MongoDB监控
  14. MySQL备份工具之mysqldump使用
  15. PCA实现
  16. Java知多少(100)图像处理基础
  17. centos6 安装 docker 问题
  18. ECMAScript5新特性之isFrozen、freeze
  19. Task2 四则运算2
  20. [置顶] ArcGIS Runtime SDKs 10.2 for iOS &amp; Android&amp; OS X发布

热门文章

  1. Android Studio安装踩坑
  2. jade和ejs两者的特点
  3. SVM 与 LR的异同
  4. 是男人就过 8 题--Pony.AI A AStringGame
  5. ABP数据库的迁移
  6. shiro实现app和web统一登录
  7. Android线程中使用Toast、dialog、loading
  8. 【bzoj2081】[Poi2010]Beads Hash
  9. Android逆向之旅---动态方式破解apk进阶篇(IDA调试so源码)
  10. LibreOJ2095 - 「CQOI2015」选数