페이지

Include Lists

2017년 3월 17일 금요일

QT 프로그램 재시작하는 방법


QProcess를 사용한 현재 실행 중인 process를 재시작 하는 방법

Application이 종료될 때 리턴 코드를 특정 코드(APP_RESTART_COD)로 할당하여,
재시작 하도록 함.

QApplication::exit(APP_RESTART_CODE);


[Ex-1]
1 if (!QProcess::startDetached(QApplication::applicationFilePath(), QApplication::arguments()))
2 {
3     messagebox()
4 }
5 else
6 {
7     // 현재 프로세스 종료
8     app::Application::exit(1);

9 }



[Ex-2]
1 int re = application.exec();
2
3 if (re == APP_RESTART_CODE)
4 {
5     QProcess* proc = new QProcess();
6     proc->start(QApplication::applicationFilePath(), QApplication::arguments());
7     proc->waitForStarted();
8 }

댓글 없음:

댓글 쓰기