Russian Qt Forum

Qt => Общие вопросы => Тема начата: ASGAlex от Май 13, 2009, 00:35



Название: Досрочный выход из программы с вывобом в консоль
Отправлено: ASGAlex от Май 13, 2009, 00:35
Нужно сделать такую вещь, чтобы при запуске программы с параметром "-v" она бросала строчку в стандартный вывод и завершалась, не показывая пользовательского интерфейса. На этом пути есть у меня папа вопросов:
  • В каком месте программы нужно вызывать функцию завершения? qApp->exit() и qApp->quit() не дают эффекта, когда я вызываю их в конструкторе главного окна. Надо, наверное, немного позже?
  • Будет ли виден "вывод в консоль" через cout<<""; в windows при выключенном модуле console? Мне даже и не в консоль нужно, мне нужно, чтобы этот вывод перенаправился в родительский процесс - для последующего анализа.
Спасибо за внимание))


Название: Re: Досрочный выход из программы с вывобом в консоль
Отправлено: lit-uriy от Май 13, 2009, 01:08
если тебе не надо показывать окно, то зачем его создавать?
Сделай всё в функции main.


Название: Re: Досрочный выход из программы с вывобом в консоль
Отправлено: ASGAlex от Май 13, 2009, 12:26
Это да, но просто мне как чайнику было очень удобно, что QApplication::arguments().indexOf() сразу извлекает то, что мне нужно )))
Ладно, придётся-таки работать головой))


Название: Re: Досрочный выход из программы с вывобом в консоль
Отправлено: lit-uriy от Май 13, 2009, 12:32
>>QApplication::arguments().indexOf() сразу извлекает то, что мне нужно
а я тебе и не предлагаю от этого отказыватся, просто сделай это в функции main, после создания объекта QApplication

Код
C++ (Qt)
int main(int argc, char **argv)
{
   QApplication app(argc, argv);
   // Здесь анализируй аргументы командной строки
   // Если нашёл нужный аргумент, то return 0
 
   MainWindow window;
   window.show();
   return app.exec();
}
 


Название: Re: Досрочный выход из программы с вывобом в консоль
Отправлено: ASGAlex от Май 13, 2009, 12:54
ага, спасибо!! Буду пользоваться..