Russian Qt Forum
Ноябрь 24, 2024, 16:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: qDebug() не работает  (Прочитано 10963 раз)
wildcat
Гость
« : Апрель 11, 2012, 14:23 »

Здравствуйте. Не выводит debug в консоль вообще ничего. Как это исправить?

в *.pro файле прописал CONFIG += debug

В *.cpp подключил инклюд #include <QDebug>

Подскажите пожалуйста что еще не добавил?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Апрель 11, 2012, 14:29 »

CONFIG += console

qmake && make clean && make
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
wildcat
Гость
« Ответ #2 : Апрель 11, 2012, 14:46 »

Сделал, но почему то выводит если qDebug(); сделать в main.cpp. Из других *.cpp не выводит
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #3 : Апрель 11, 2012, 14:59 »

Не может такого быть. Код показывай.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
wildcat
Гость
« Ответ #4 : Апрель 11, 2012, 15:07 »

тут система такая.... В системе есть плагин аунтификации.

Код
C++ (Qt)
#include <QDebug>
#include <QLibrary>
#include <QSettings>
#include <QProcess>
#include <QString>
#include "auth_plugin.h"
 
AuthPlugin::AuthPlugin(QObject*parent)
   :QObject(parent)
{
   qDebug()<< "Constructor!" << endl; //user;
}
 
void AuthPlugin::init()
{
 
#if defined(Q_OS_LINUX)
 
   QProcess whoami;
   whoami.start("whoami");
   QString out_whoami;
   out_whoami=whoami.readAllStandardOutput();
   out_whoami.remove(out_whoami.size()-1, 1 );
   user=out_whoami;
   qDebug()<<user<<"\n"<< "Hello!" << endl;
 
 
 
   QProcess proc;
   QString m_Output;
 
   proc.setProcessChannelMode( QProcess::SeparateChannels );
   proc.start( "id -Z" );
   if (!proc.waitForStarted(1000)) {
       QString e_info;
       switch(proc.error()){
       case QProcess::FailedToStart:
           e_info = QObject::trUtf8("[Процесс не запущен или отстутсвуют права доступа на исполнение]");
           break;
       case QProcess::Crashed:
           e_info = QObject::trUtf8("[Процесс завершен с ошибкой, после успешного запуска]");
           break;
       case QProcess::Timedout:
           e_info = QObject::trUtf8("[Превышен предел ожидания ответа от процесса]");
           break;
       case QProcess::WriteError:
           e_info = QObject::trUtf8("[Ошибка записи в процесс (Процесс не запущен?)]");
           break;
       case QProcess::ReadError:
           e_info = QObject::trUtf8("[Ошибка чтения из процесса (Процесс не запущен?)]");
           break;
       case QProcess::UnknownError:
           e_info = QObject::trUtf8("[Неизвестная ошибка]");
           break;
       }
 
       emit sendEventMessageInfo(QObject::trUtf8("Ошибка %1\nПри запуске приложения id -Z !\n%2")
                                 .arg(e_info)
                                 .arg(QString(Q_FUNC_INFO)),
                                       VPrn::eId_AppsError,
                                       VPrn::Error,
                                       VPrn::eCatId_Error);
 
       qDebug()<< m_Output << " QProcess::error() " << proc.error();
   }else{
       proc.waitForFinished(-1);
       proc.closeWriteChannel();
       m_Output = proc.readAll();//.trimmed();
       m_Output.remove(m_Output.size()-1, 1 ); //удаляем последний символ новой строки '\n'
       // логон:роль:домен:mls:msc;
 
       // unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
       qDebug() << Q_FUNC_INFO << "m_Output " << m_Output << "\n";
       QStringList context = m_Output.split(":");
       if (context.count() == 5){
           //user = context.at(0); // логин
           role  = context.at(1);
           mlsRange   = context.at(3);
           mcsRange   = context.at(4);
          //emit userAuth(user,role,mlsRange,mcsRange);
       }
   }
emit userAuth(user,role,mlsRange,mcsRange);
#endif
/*
#endif*/

}
 
Q_EXPORT_PLUGIN2(auth_plugin, AuthPlugin);
 


Записан
wildcat
Гость
« Ответ #5 : Апрель 11, 2012, 16:14 »

Все заработало. Спасибо огромное, Пантер =) 
Записан
Bepec
Гость
« Ответ #6 : Апрель 11, 2012, 18:07 »

Оммм... Пантер поправил его код на расстоянии!!!

Слава Пантеру! СЛАВА!

PS в заголовке темы поставь [РЕШЕНО] (уточняю - редактируй 1 сообщение темы и в поле "Тема" ставь <название темы>[РЕШЕНО])
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #7 : Апрель 12, 2012, 09:46 »

Оммм... Пантер поправил его код на расстоянии!!!

Слава Пантеру! СЛАВА!

PS в заголовке темы поставь [РЕШЕНО] (уточняю - редактируй 1 сообщение темы и в поле "Тема" ставь <название темы>[РЕШЕНО])
В конфе разобрались. Проблема была в том, что человек не совсем корректно обрабатывал самописный qInstallMsgHandler.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.09 секунд. Запросов: 23.