Russian Qt Forum

Qt => Общие вопросы => Тема начата: Admin от Июль 16, 2009, 13:11



Название: Запуск с программы из консоли + fork
Отправлено: Admin от Июль 16, 2009, 13:11
Всем привет.

Нужно сделать следующее, когда я запускаю оpenoffice из консоли, он запускается и освобождает консоль. Как
это сделать для своей программы. Я как понимаю процесс форкается?

Всем спасибо.


Название: Re: Запуск с программы из консоли + fork
Отправлено: Rcus от Июль 16, 2009, 13:22
Не знаю как OOo, но KUniqueApplication использует fork() /** \see http://websvn.kde.org/trunk/KDE/kdelibs/kdeui/kernel/kuniqueapplication.cpp?revision=995570&view=markup*/
А вообще это поведение можно имитировать при помощи QProcess::startDetached и флага в аргументах (например -d или наоборот -nofork)


Название: Re: Запуск с программы из консоли + fork
Отправлено: Alex Custov от Июль 16, 2009, 16:11
Код
C++ (Qt)
int main(int argc, char **argv)
{
   QCoreApplication app(argc, argv);
 
   ...
 
   switch (fork())
   {
       case 0:  break;
       case -1: exit(1);
       default: exit(0);
   }
 
   return app.exec();
}
 


Название: Re: Запуск с программы из консоли + fork
Отправлено: Admin от Июль 17, 2009, 09:02
Спасибо - работает.