Название: OCI и Qt4.2.2 Отправлено: vinnipux от Декабрь 05, 2007, 13:07 Пересмотрел весь форум так и не нашел как установить правильно OCI. Qt.Commercial.v4.2.2 + MSVS2005. Делаю все как описано в Ассистенте, создает библиотеку и dll в папке %QTDIR%\plugins\sqldrivers\ qsqloci.dll, скопировал так же ocu.dll в system32. и все равно не видит драйвер. Подскажите что делаю не так? В чем проблема?
Название: Re: OCI и Qt4.2.2 Отправлено: Barmaglodd от Декабрь 05, 2007, 17:12 Ничего никуда не копировал, просто поставил клиента Оракла, все отлично работает. Драйвер вкомпилирован в QSql.dll, т.к. просто не осилил, что и как надо настроить, чтобы драйвера, собранные как плагины, подгружались на машинах, где раньше Qt небыло.
Название: Re: OCI и Qt4.2.2 Отправлено: vinnipux от Декабрь 05, 2007, 17:31 Ничего никуда не копировал, просто поставил клиента Оракла, все отлично работает. Драйвер вкомпилирован в QSql.dll, т.к. просто не осилил, что и как надо настроить, чтобы драйвера, собранные как плагины, подгружались на машинах, где раньше Qt небыло. хм...странно, у меня то же стоит клиент. но нифига не работает. и даже когда скомпили плагин. люди помогите разобратся, дайте хоть сылку где можно почитать, хоть намекните куда копать в какую сторону. Название: Re: OCI и Qt4.2.2 Отправлено: Barmaglodd от Декабрь 05, 2007, 17:53 Может стоит собрать qsqloci как часть qsql.dll, а не как плагин?Хотя это, конечно, уже пляски с бубуном.
Название: Re: OCI и Qt4.2.2 Отправлено: DmP от Декабрь 05, 2007, 18:25 Если какой драйвер не загружается, то нужно убедится, что ваша программа собрана тем же компилятором, и в том же режиме - в смысле DEBUG/RELEASE.
Что бы узнать чем и как собран плагин смотрим реестр, после попытки загрузить плагин: HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.3.false или HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.2.false ну в зависимости от версии Qt :) Название: Re: OCI и Qt4.2.2 Отправлено: vinnipux от Декабрь 05, 2007, 18:27 Может стоит собрать qsqloci как часть qsql.dll, а не как плагин?Хотя это, конечно, уже пляски с бубуном. Подскажи как это сделать! Буду очень благадарен!Название: Re: OCI и Qt4.2.2 Отправлено: DmP от Декабрь 05, 2007, 18:30 Так же можно открыть плагин с помощью DependencyWalker, и убедится, что все связи разрешены.
Название: Re: OCI и Qt4.2.2 Отправлено: vinnipux от Декабрь 06, 2007, 05:32 Так же можно открыть плагин с помощью DependencyWalker, и убедится, что все связи разрешены. Прошу прощения за моЁ невежество, но плагин в нашем случае это файл qsqloci.dll?Если какой драйвер не загружается, то нужно убедится, что ваша программа собрана тем же компилятором, и в том же режиме - в смысле DEBUG/RELEASE. посмотрел, и обноружил следующие:qsqloci.dll - release и qsqlocid.dll - release, а qsqlited.dll - debug. но как я понимаю тогда в релизе если компилировать она должна видеть oci, а не видет. Блин помогите...Что бы узнать чем и как собран плагин смотрим реестр, после попытки загрузить плагин: HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.3.false или HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.2.false ну в зависимости от версии Qt :) просмотрел папку %QTDIR%\src\plugins\sqldrivers\oci\tmp\ там две папки moc и obj , в них есть папки debug_xxxxxx так вот они пустые а в папках release есть фалики. вроде создолося в %QTDIR%\src\plugins\sqldrivers\oci\ 3 makefile: makefile.Release, makefile.debug, makefile. блин почему не компилирует дебуг не понятно. и почему когда прогу в release компилируеш не видит OCI Название: Re: OCI и Qt4.2.2 Отправлено: DmP от Декабрь 06, 2007, 11:37 Так же можно открыть плагин с помощью DependencyWalker, и убедится, что все связи разрешены. Прошу прощения за моЁ невежество, но плагин в нашем случае это файл qsqloci.dll?Да наверное это и есть плагин - драйвер оракла. Нужнно убедится, что все ДЛЛ, которые он использует в пределах досягаемости. Цитировать Если какой драйвер не загружается, то нужно убедится, что ваша программа собрана тем же компилятором, и в том же режиме - в смысле DEBUG/RELEASE. посмотрел, и обноружил следующие:qsqloci.dll - release и qsqlocid.dll - release, а qsqlited.dll - debug. но как я понимаю тогда в релизе если компилировать она должна видеть oci, а не видет. Блин помогите...Что бы узнать чем и как собран плагин смотрим реестр, после попытки загрузить плагин: HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.3.false или HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.2.false ну в зависимости от версии Qt :) просмотрел папку %QTDIR%\src\plugins\sqldrivers\oci\tmp\ там две папки moc и obj , в них есть папки debug_xxxxxx так вот они пустые а в папках release есть фалики. вроде создолося в %QTDIR%\src\plugins\sqldrivers\oci\ 3 makefile: makefile.Release, makefile.debug, makefile. блин почему не компилирует дебуг не понятно. и почему когда прогу в release компилируеш не видит OCI В ключе "Qt Plugin Cache 4.3.false" у меня следующие значения, скажем: 40302 0 Windows msvc release full-config Для того что бы плагин загрузился, необходимо, что бы эти же параметры были и у программы, с помощью которой загружаете плагин. Проверить их для своей программы можно скажем так: #include <QtPlugin> #include <QDebug> void test() { Q_PLUGIN_VERIFICATION_DATA; qDebug() << qt_plugin_verification_data; } Название: Re: OCI и Qt4.2.2 Отправлено: Barmaglodd от Декабрь 06, 2007, 11:44 Подскажи как это сделать! Буду очень благадарен! configure -qt-sql-oci дальше нужные вам параметры, и пересобираем. Может можно как-то только QSql переконфигурировать, но я не разбирался как.Название: Re: OCI и Qt4.2.2 Отправлено: DmP от Декабрь 06, 2007, 11:48 Также если программа собирается с помощью некого IDE, то нужно убедится, что не смешиваются сборки, скажем Debug сборка не линкуются с Release сборкой Qt, и правильно задан QT_NO_DEBUG или QT_DEBUG
Название: Re: OCI и Qt4.2.2 Отправлено: vinnipux от Декабрь 06, 2007, 12:58 спасибо разобрался.Спасибо тебе DmP . Очень блогадарен.!респек и уважуха!
Название: Re: OCI и Qt4.2.2 Отправлено: DmP от Декабрь 06, 2007, 22:19 спасибо разобрался.Спасибо тебе DmP . Очень блогадарен.!респек и уважуха! Пожалуйста. :) Просто сам с кошмаром вспоминаю, как с бубном бегал вокруг компа, что бы заработал плагин MySQL :)Рад, что заработало. |