Вниз
Скачать: CL | DM;

ADOConnect := TADOConnection.Create(Application) -> EOleSysError   Найти похожие ветки 

← →
Sphinx ©   (2006-05-09 08:51) [0]

В динамическую библиотеку (.dll) передаю Application из вызывающего приложения и пытаюсь создать экземпляр TADOConnection:
ADOConnect := TADOConnection.Create(App);
на этой строке у меня почему-то выскакивает исключение EOleSysError с сообщение "не был произведен вызов CoInitialize" причем по русски (может имеет значение, Делфя сама - английская).
Если это же действие выполнить в приложении (.ехе) то ошибка не наблюдается, что я забыл учесть ???

Заранее признателен за ответ.


← →
Anatoly Podgoretsky ©   (2006-05-09 09:04) [1]

Ну и почему бы не выполнить эту рекомендацию?


← →
Sphinx ©   (2006-05-09 09:14) [2]

2 Anatoly Podgoretsky ©
Поверхностно пробежался по исходникам ADO и честно не понял какой именно интерфейс не вызывает CoInitialize. Дебагер ни в какую не заходит в эти исходники =(
Сейчас параллельно читаю и стараюсь понять как работает ADO, хотя бы в общих чертах и чем для него отличается .dll и .exe
Так то проблем вызвать - ни каких...но не могу найти для чего именно...


← →
Anatoly Podgoretsky ©   (2006-05-09 10:10) [3]

"не был произведен вызов CoInitialize"
А нужно для того, чтобы был произведен вызов CoInitialize


← →
isasa ©   (2006-05-09 11:08) [4]

Для "самодостаточности" DLL добавить в DllEntryPoint (DLL_PROCESS_ATTACH)
для
CoInitializeEx(nil, COINIT_APARTMENTTHREADED );   // STA модель
для
CoInitializeEx(nil, COINIT_MULTITHREADED );          // MTA модель

в DllEntryPoint (DLL_PROCESS_DETACH)

CoUninitialize;

в приложении, "на всякий случай" :)
...
CoInitFlags:= COINIT_APARTMENTTHREADED;   // STA модель
//или CoInitFlags:= COINIT_MULTITHREADED;          // MTA модель
Application.Initialize;
...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
2-1150214511
AlexanderMS
2006-06-13 20:01
2006.07.02
БД. Переход на строку с помощью колёсика мыши.


6-1140371174
newprogrammer
2006-02-19 20:46
2006.07.02
winsock назначение порта серверу


2-1149706598
ПарадоксКвери
2006-06-07 22:56
2006.07.02
Как мне быть с Query&


2-1149855771
AlexanderMS
2006-06-09 16:22
2006.07.02
Клавиши быстрого доступа в меню на русском языке.


3-1146807403
seregarem
2006-05-05 09:36
2006.07.02
Изменение поля




   Наверх