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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: IBASE и библиотека fbclient  (Прочитано 4391 раз)
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« : Ноябрь 28, 2016, 15:23 »

Собрал драйвер. Написал приложение.
На моем компе работает. Но на компе другого пользователя нет.
Выдает ошибку драйвера, но не пойму почему все либы, которые возможно я подкинул к ехе-файлу.
Помогите разобраться Непонимающий Непонимающий Непонимающий
Код
C++ (Qt)
Application::Application(int &argc, char **argv)
   :QApplication(argc, argv)
{    
   QString path = QDir::currentPath();
   qDebug()<<"path = "<<path;
 
   QFile file;
   file.setFileName(path + "/path.ini");
   if(file.exists()){
       QSettings settings(path + "/path.ini", QSettings::IniFormat);
       settings.beginGroup("sql");
       QString str_path = settings.value("path").toString();
       QString str_host_name = settings.value("host_name").toString();
       int port =  settings.value("port").toInt();
       QString str_user_name = settings.value("user_name").toString();
       QString str_password = settings.value("password").toString();
       settings.endGroup();
       QSqlDatabase db = QSqlDatabase::addDatabase("QIBASE");
 
        if (!db.isValid())
       {
           qDebug() << "[ " + QDateTime::currentDateTime().toString("dd.MM.yyyy - hh.mm.ss") + " ]" << db.lastError().text();
           QMessageBox::critical(0,"Database",db.lastError().text(),QMessageBox::Ok);
   return;
       }
 
       db.setDatabaseName(str_path);
       db.setHostName(str_host_name);
       db.setPort( port );
       db.setUserName(str_user_name);
       db.setPassword(str_password);
 
       if(!db.open())
       {
           QString str = db.lastError().text();
           qCritical() << "[ " + QDateTime::currentDateTime().toString("dd.MM.yyyy - hh.mm.ss") + " ]" <<str;
           QMessageBox::critical(0,"Database",str,QMessageBox::Ok);
           //connectDB = false;
           return;
       }
       qDebug()<<"Connect DataBase";
       qDebug()<<"tables "<<db.tables(QSql::Tables).count()<<": "<<db.tables(QSql::Tables);
   }
   else{
       QMessageBox::critical(0,"Settings","No File Settings",QMessageBox::Ok);
   }
}
 
Application::~Application()
{
}
 
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #1 : Ноябрь 29, 2016, 22:29 »

А какие либы Вы статически прилинковали к своему экзешнику? fbclient требуется QT-шному плагину, как я понимаю ни плагин к программе статически не может быть прилинкован, ни fbclient к плагину тоже. Вот оно и не работает.
Записан
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« Ответ #2 : Ноябрь 30, 2016, 19:54 »

А какие либы Вы статически прилинковали к своему экзешнику? fbclient требуется QT-шному плагину, как я понимаю ни плагин к программе статически не может быть прилинкован, ни fbclient к плагину тоже. Вот оно и не работает.
Да Вы правы. Либы это dll-ки стандартый набор , чтобы
exe файл запустился. И он запускается, а база не пашет. И что мне делать?


Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #3 : Ноябрь 30, 2016, 22:13 »

Что пишет-то? Очевидно не все ДЛЛ-ки видны запускаемому файлу. Не знаю как в Виндовс, возможно плагин БД должен в специальной папке лежать, а не просто рядом с EXE-шником.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #4 : Декабрь 02, 2016, 11:48 »

http://www.wiki.crossplatform.ru/index.php/Развертывание_приложений_Qt_в_MS_Windows
Записан

Юра.
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« Ответ #5 : Декабрь 08, 2016, 14:13 »

Спасибо
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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