Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [qt4.4] Отладчик QtCreator


Автор: GrishinUS 12.11.2008, 16:28
Добрый день!

Есть такая проблемка. Ставлю точку останова в отладчике QtCreator 0.9

Код

int DoInImpl::RarusRequest()
{    
        QSqlDatabase dbNewRarus = QSqlDatabase::addDatabase("QODBC");

        QString qstrConnectionString = "Driver={SQL Native Client};Server=";
        qstrConnectionString.append(structSettings.RarusServ);
        qstrConnectionString.append(";Database=");
        qstrConnectionString.append(structSettings.RarusDataBase);
        qstrConnectionString.append(";Uid=");
        qstrConnectionString.append(structSettings.RarusDataBaseUser);
        qstrConnectionString.append(";Pwd=");
        qstrConnectionString.append(structSettings.RarusDataBasePassword);

        dbNewRarus.setDatabaseName(qstrConnectionString);
        
    bool connected = dbNewRarus.open();
    if (!connected) 
        {
         QMessageBox msgBox;

            msgBox.setText("database : new_rarus");
            msgBox.setIcon(QMessageBox::Critical);
            msgBox.setDefaultButton(QMessageBox::Save);
            msgBox.setInformativeText(dbNewRarus.lastError().text());
            msgBox.setStandardButtons(QMessageBox::Ok);
            msgBox.setDefaultButton(QMessageBox::Ok);
            msgBox.exec();
            
            return 10;
        }
    
    model = new QSqlQueryModel(tableView);
    QString qstrToAppend;
    qstrToAppend.append("SELECT "
   ...

    model->setQuery(QSqlQuery(qstrToAppend));   


    tableView->setModel(model); <== точка здесь

    return 0;
}


далее запускаю программу в режиме отладки и ввожу в нее некие данные, которые запускают другой даилог. Точка останова установлена НЕ в конструкторе этого диалога.

Программа уходит из фокуса будто сейчас сработала точка останова и я увижу локальные переменные этого метода, но этого не появляется и программа не возвращается в фокус.
Кроме того становятся доступными кнопки "продолжить" и "остановить" (выделены квадратом на рисунке).
Я не понимаю то ли оно так криво работает, то ли я его криво использую (или криво настроил). Соответственно ни о какой полноценной отладке речи не идет.

http://ipicture.ru/Gallery/Viewfull/9035545.html

Автор: SABROG 12.11.2008, 17:03
Попробуй отладчик gdb или ollydbg, если с первым не разберешься.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)