Текущий архив: 2009.01.11;
Скачать: CL | DM;
Вниз
TIBataBase и DLL Найти похожие ветки
← →
Сергей М. © (2008-03-17 08:26) [40]
> а в DoneDll: Form1.Free
> Убрав DoneDll все стало работать
Те же фаберже, только вид сбоку - где-то присутствует попытка повторного уничтожения объекта, только в д.сл. этим объектом является объект-форма.
← →
Maxick © (2008-03-17 09:02) [41]По логике вещей - да. Но не вижу где.
function InitDll():boolean; stdcall;
begin
Form1:= TForm1.Create(Application);
Result:= true;
end;
function DoneDll():boolean; stdcall;
begin
Form1.Free;
Result:= true;
end;
Function ShowForm(): boolean; stdcall;
begin
form1.show;
Result:= true;
end;
Вызыв:var//глабальные переменные
hdll: THandle;
..OnCreate(sender);
begin
...
hdll:=LoadLibrary("zzz.dll");
@InitDll:= getprocadress(hdll,"InitDll");
ItitDll;
...
OnDestroy
DaneDll;
FreeLibrary(hdll);
...
OnClick (кнопочка на главной форме)
ShowForm;
Тоесть все по класической схеме.
← →
Сергей М. © (2008-03-17 09:26) [42]
> Form1:= TForm1.Create(Application);
Application здесь от балды написано ?
Или ты понимаешь смысл именно такого указания ?
← →
Сергей М. © (2008-03-17 09:30) [43]stdcall тоже от балды указано ?
Это, конечно, не принципиально, но нельзя же бездумно сдувать чужой код, "заточенный" под чиную специфику)
← →
Maxick © (2008-03-17 10:08) [44]
> Form1:= TForm1.Create(Application);
Сделано для указания родителя, вовсе не бездумно. Мне нужно, чтоб наследовала форма некоторые свойства от Application.
А по поводу StdCall - это для того, чтоб работали мой длл не только с моим приложением. Теорию я знаю, и бездумно не сдираю чужие коды - этож класика ...
← →
Leonid Troyanovsky © (2008-03-17 10:13) [45]
> Maxick © (17.03.08 10:08) [44]
> А по поводу StdCall - это для того, чтоб работали мой длл
> не только с моим приложением. Теорию я знаю, и бездумно
Сказка про белого бычка.
--
Regards, LVT.
← →
Maxick © (2008-03-17 10:48) [46]
> Leonid Troyanovsky © (17.03.08 10:13) [45]
а попробуй без соглашения CtdCall вызвать функцию из DLL написаной на Delphi в С++...
← →
Сергей М. © (2008-03-17 12:37) [47]
> Сделано для указания родителя, вовсе не бездумно. Мне нужно,
> чтоб наследовала форма некоторые свойства от Application.
Ни "родительские" ни "наследственные" отношения не имеют к параметру Owner никакого отношения.
Owner - это владелец, а не "родитель" и тем более не "предок".
> Теорию я знаю, и бездумно не сдираю чужие коды - этож класика
Да-да, оно заметно.
> попробуй без соглашения CtdCall вызвать функцию из DLL написаной
> на Delphi в С++
Ну и какой нафих Application в C++ ? И c какой луны там взялся TIBDatabase, который ты вознамерился передать в свою dll ?
Страницы: 1 2 вся ветка
Текущий архив: 2009.01.11;
Скачать: CL | DM;
Память: 0.55 MB
Время: 0.014 c