Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
ВнизКак передать DLL-процедуре указатель на Owner (TComponent) Найти похожие ветки
← →
vtur © (2006-11-23 13:49) [0]Здраствуйте, уважаемые коллеги .
Помогите разобраться в такой проблеме.
Я разработал процедуру выполнения
SQL-скриптов для обновления структуры
Interbase/Firebird-БД с применением
FIPlus-компонент и хочу оформить ее в
виде DLL-модуля, с тем, чтобы она могла
вызываться в случаях необходимости из
любых приложений, в том числе
использующих другие технологии для
доступа к БД.
Объявление процедуры следующее
function ExecuteScripts(psDBName,psUser,psPasswd:PChar;Owner:TComponent):Integer;
Так вот, проблема в том, что при выполнении операции
dd:=TpFIBDatabase.Create(Owner);
(в саммом начале процедуры) возникает
exceptіon нарушения доступа к
памяти и процедура, естественно, не
выполняется.
В чем, собственно, проблема и как ее разрешить?
И шире: какова вообще технология создания
DLL-функций, которые бы могли создавать различные
экранные формы, "привязываясь" к родителькому приложению?
← →
Dmitrij_K (2006-11-23 14:02) [1]http://forum.vingrad.ru/topic-121685.html
← →
Reindeer Moss Eater © (2006-11-23 14:14) [2]с тем, чтобы она могла вызываться в случаях необходимости из
любых приложений, в том числе использующих другие технологии для
доступа к БД.
Ну вот я - приложение на VB и нет у меня никакого оунера и тем более ТОбджекта. Что мне делать с твоей dll?
← →
clickmaker © (2006-11-23 14:25) [3]
> dd:=TpFIBDatabase.Create(Owner);
и зачем TpFIBDatabase нужен этот оунер?
← →
vtur © (2006-11-23 16:44) [4]Спасибо за внимание.
Разобрался с технологией.
Owner:TComponent в вызове действительно не нужны
и все пр. несколько по другому...
← →
Сергей М. © (2006-11-23 16:45) [5]
> Owner:TComponent в вызове действительно не нужны
Зато весьма желательно указывать stdcall
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.042 c