crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в QSqlCipher; на другом пк: driver not loaded.
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 13.9.2010, 12:05
 
Цитата(AntonH851 @ 13.9.2010, 15:08) *
Depends.exe показал что нет msjava.dll,
не все библиотеки, что отсутствуют, нужны. В Депенденси Волкер, есть профилировщик (смотри меню) запусти в нём свою программу.
При запуске он покажет, что программа пытается загрузить.
AntonH851 Дата 13.9.2010, 11:08
 
Цитата(Алексей1153 @ 13.9.2010, 12:03) *
AntonH851, в пакете студии есть инструмент depends.exe . Позволяет посмотреть, какие библиотеки хочет экзешник, какие он нашёл, какие нет (и где нашёл - путь можно посмореть)


Depends.exe показал что нет msjava.dll,
в ручную установил, не помогло...
может эта dll как раз и была из Microsoft Visual C++ 2008 Redistributable
Алексей1153 Дата 13.9.2010, 11:03
  AntonH851, в пакете студии есть инструмент depends.exe . Позволяет посмотреть, какие библиотеки хочет экзешник, какие он нашёл, какие нет (и где нашёл - путь можно посмотреть)

Я при помощи этого тула заставил Qt'шную программу заработать у заказчика ))) Скопировал все релизные варианты DLL в папку с экзешником.
AntonH851 Дата 13.9.2010, 11:01
  Оказывается не работало из-за отсутствия Microsoft Visual C++ 2008 Redistributable
Попробовал переустановить OpenSSL и выдало сообщение что не хватает этого компонента, первый раз не заметил почему-то его....
Теперь все работает.
igor_bogomolov Дата 13.9.2010, 10:59
 
Цитата(AntonH851)
Это все?
Если папка с программой = папке где располагается exe файл запуска программы, то да, всё делаешь правильно.

Тем не менее видимо какие то зависимости не удовлетворены. Не знаю что и посоветовать. У меня не будет возможность сегодня проверить.
В Total Comander есть замечательная утилита показывающая зависимости dll и пути их поиска. Вызывается по F3 на dll'ке. Попробуй с ее помощью посмотреть что хочет qsqlcipher4.dll и где он это пытается найти

Ага, вот и Юра правильно подсказывает. Библиотека и программа должны быть собраны в одном режиме, либо debug, либо release
Litkevich Yuriy Дата 13.9.2010, 10:52
 
Цитата(AntonH851 @ 13.9.2010, 14:44) *
Это все?
нужно ещё чтобы программа была в релизе, либо программа в отладочном варианте и dll'ку брать с буквой d на конце
AntonH851 Дата 13.9.2010, 10:44
 
Цитата(igor_bogomolov @ 13.9.2010, 11:32) *
OpenSSL не забыл на другом ПК установить?


Не забыл, это не помогло.
Т.е. для корректной работы надо:
1. создать в папке с программой папку sqldrivers и в нее положить qsqlcipher4.dll
2. установить OpenSSL
Это все?

igor_bogomolov Дата 13.9.2010, 10:32
 
Цитата(AntonH851)
Правда при сборке драйвера у меня не появился файл
libqsqlcipher.so

Ты же под Windows компилируешь. Поэтому вместо .so создается .dll
Цитата(AntonH851)
C:\Qt\2010.02\qt\plugins\sqldrivers\qsqlsipher4.dll


OpenSSL не забыл на другом ПК установить?
AntonH851 Дата 13.9.2010, 10:01
 
Цитата(molchanoviv @ 13.9.2010, 10:37) *
Практически весь раздел "Qt Разработка баз данных" состоит из обсуждения этой проблемы.

Дело в том, что как обычно копирование sqldrivers в каталог с программой не помогает....
Правда при сборке драйвера у меня не появился файл
libqsqlcipher.so
Цитата
В каталоге ~/qtsdk/qt/plugins/sqldrivers у Вас должен появиться файл libqsqlcipher.so

Может из-за этого проблема?
molchanoviv Дата 13.9.2010, 9:37
  Практически весь раздел "Qt Разработка баз данных" состоит из обсуждения этой проблемы.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.4.2024, 13:35