Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [wx] ODBC DatabaseLayer - как это работает? попытки подключиться к несерверной БД 
:(
    Опции темы
Static
Дата 19.11.2008, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 6.11.2008

Репутация: нет
Всего: 2



Дано: 
БД SQL Anywhere
WxWidgets 2.8.9
Code::Blocks 8.02
DatabaseLayer 1.7.5


Код

class ODBCObj
{
public:
DatabaseLayer *m_DB;
bool Connect();
DatabaseLayer *GetDB();
};

//---------------------некий код-------------
ODBCObj *MyDB;
((OdbcDatabaseLayer*)MyDB->m_DB)->Open(_("DSN=DsnName; UID=userid; PWD=pass"));


Приложение крашится :(
Читал http://wxwidgets.info/wx_accessing_sqlite - немного не то, пытался сделать по аналогии. 
В чем может быть проблема?

собрал libdatabaselayer_databaselayer_odbc.a - указываю ее линкеру...
--------------------
Я не настолько безнадежен, как кажется...
PM MAIL   Вверх
t_rex
Дата 19.11.2008, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 11.10.2006
Где: Украина, г. Запор ожье

Репутация: 2
Всего: 7



В дистрибутиве DatabaseLayer есть тестовая прилога, посмотри как там сделано, а вобще ODBC в wx немного мм.. печальный, я не уверен что он так строковый DSN схавает, надо сидеть дебажить. В принципе если крашится, то лучше в пошаговом режиме посмотреть на какой строке и поправить сорец OdbcDatabaseLayer, думаю править все равно прийдется, там бывает на некоторых СУБД проблемы со строками
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей
PM MAIL WWW ICQ Skype GTalk   Вверх
Static
Дата 20.11.2008, 09:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 6.11.2008

Репутация: нет
Всего: 2



ох, обрадовали вы мну....
ладно, поглядим.

P.S. Самое смешное, сделал почти все что хотел в итоге через wxDb. Потестил-повертел, удалил комментарии - перестало работать. Мистика...

P.P.S. функция Open() DatabaseLayer'a не работала никак:
ни через connection string;
ни через Open(путь к файлу базы); - ну тут ладно, пароль все-таки нужен, учетка...
ни в какой-либо другой форме :(

Это сообщение отредактировал(а) Static - 20.11.2008, 09:35
--------------------
Я не настолько безнадежен, как кажется...
PM MAIL   Вверх
t_rex
Дата 21.11.2008, 01:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 11.10.2006
Где: Украина, г. Запор ожье

Репутация: 2
Всего: 7



Ненене, ты wxDb не трогай, его скоро не будет. wxODBC упраздняют поэтому потом сапортить свой софт ты не сможешь. Лучше все-таки попробуй с DatabaseLayer добиться желаемого результата. Это не так сложно на самом деле. Пол-часа дебага и все решается.
По поводу OdbcDatabaseLayer, создай пользовательский DSN и указывай его название при конекте. Должно отлично работать. С файловыми DSN не помню, надо пробовать. В Панель управления - Администрирование - Источники данных ODBC
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей
PM MAIL WWW ICQ Skype GTalk   Вверх
Static
Дата 21.11.2008, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 6.11.2008

Репутация: нет
Всего: 2



про "скоро не будет" - в курсе. Я уже по долгу службы наверно все русское прочел по wx и за английское принялся  smile
Просто саппортить сей софт не надо будет, критичны сроки.
А за Layer в следующем проекте примусь.
--------------------
Я не настолько безнадежен, как кажется...
PM MAIL   Вверх
Static
Дата 3.9.2009, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 6.11.2008

Репутация: нет
Всего: 2



вернемся к DatabaseLayer'у
1. Пересобирая ODBCDatabaseLayer с новым компилятором, обнаружил, что не могу собрать версию для debug :-\
Т.е. либа-то собирается, но в проекте при попытке линковки оказывается куча undefined referenc'ов на wxLogDebug/wxOnAssert. Это очень неприятно. Причем в прошлый раз у меня такой проблемы не возникало. Что-то явно упустил, не могу понять - что... Нигде не могу найти более подробной инструкции по сборке, чем в его собственном хелпе. А там кроме mingw32-make -f makefile.gcc ничего не написано. Подскажите что-нибудь, пожалуйста.

2. Учитывая, что release сборка работает, я написал тестовое приложение (юникод). Оно должно работать в том числе и под вин98. Линкую libunicows.a к проекту - как обычно. Под 98 программа просто молча не запускается. Под ХР - работает нормально. Вопрос: при сборке самого DatabaseLayer'а тоже нужно подсунуть libunicows.a? Или проблема скорее всего не в этом?..
--------------------
Я не настолько безнадежен, как кажется...
PM MAIL   Вверх
t_rex
Дата 4.9.2009, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 11.10.2006
Где: Украина, г. Запор ожье

Репутация: 2
Всего: 7



проблема не в этом.
мейкфайл надо править. если не находит всякое то надо убедиться что в мейкфайле правильно прописан путь к wxWidgets.
А еще проще собрать статическую библиотеку в Code::Blocks - сделать там проект и настроить все самостоятельно
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей
PM MAIL WWW ICQ Skype GTalk   Вверх
Static
Дата 4.9.2009, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 6.11.2008

Репутация: нет
Всего: 2



да смотрел я мейкфайл... Там не густо-то и места для копания в нем. В любом случае  - спасибо, в понедельник буду думать дальше.
--------------------
Я не настолько безнадежен, как кажется...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0621 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.