Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO в DLL :( [D5, Paradox]


Fbist ©   (2003-03-11 13:48:00) 

Привет всем!
Биг трабл!
Пишу прогу по работе с БД Paradox через ADO. Появилась необходимость вынести модуль, работающий с БД в DLL. Всё сделал. Но с этого момента стала валиться строчка:
ADOConnection:=TADOConnection.Create(nil);

Ошибка такая: class EOleSysError message "Не был произведён вызов CoInitialize".

Ничего не понимаю...


sniknik   (2003-03-11 15:07:00) [1]

действительно странно, с ADO как раз ничего не должно быть.

проверь мыло, послал пример (простой, но рабочий), правда под 6 дельфи писано но по причине элементарности может и на 5 скомпилится.


Fbist   (2003-03-11 14:59:00) [2]

Да не было никаких проблем. Только с ADO запарки вышли... Может где-то надо какую-то ещё инициализацию провести?


app   (2003-03-11 14:53:00) [3]

Из за ДЛЛ у тебя будет еще много проблем.


Fbist   (2003-03-11 14:49:00) [4]

ShareMem - по любому написан. Это понятно :)
Но почему-то виснет. А ещё виснет при

ADOQuery.SQL.ADD("~запрос~");

Странные вещи...


sniknik   (2003-03-11 14:45:00) [5]

+ ко всему сказаному ShareMem первым в Uses в Dll и в программу.
like
uses
ShareMem, SysUtils, Classes, ADODB;
если до сих пор не стоит
(при работе с базой без строк не обойтись, а без этого не работает)


Fbist   (2003-03-11 14:29:00) [6]

Большой Сенькс! :)
Коннекшн создался!
Но при ADOConnection.Connected:=True;
Всё вообще зависает намертво...
Это наверное вообще головняк ещё тот... Тут КоИнитом не отделаюсь...


stone   (2003-03-11 14:19:00) [7]

Fbist © (11.03.03 14:12)

Но откуда то ты библиотеку вызываешь (Host Application). Вот там и пиши.


Fbist   (2003-03-11 14:12:00) [8]

У меня в принципе нет главной формы - это всё службы... Менеджеры там, контроллеры дотупа. Форм нет...
А потом они подключаются к главному приложению - там есть формы.


Fbist   (2003-03-11 14:09:00) [9]

Ща попробую. В главной форме ЕХЕ приложения? Или при инициализации DLL? И что это процедура значит?


Anatoly Podgoretsky   (2003-03-11 14:08:00) [10]

stone © (11.03.03 14:00)
Ты думаешь у него главная форма создается в DLL?


stone   (2003-03-11 14:00:00) [11]

В OnCreate главной формы приложения
CoInitialize(nil)


Anatoly Podgoretsky   (2003-03-11 13:58:00) [12]

Это у тебя как раз и не вызывается, а надо


Fbist   (2003-03-11 13:57:00) [13]

Дык это фиг знает где вызывается. Какой-то скрытый метод. Прочесал АДОшные исходники - ничего не заметил. Почему-то при работе в не ДЛЛ - нормально пашет... Как-то оно должно само инициализироваться... Мож кто знает как?


Anatoly Podgoretsky   (2003-03-11 13:50:00) [14]

Так произведи как советуют


Наверх

Титульная страница Поиск, карта сайта Написать письмо