Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.07;
Скачать: CL | DM;

Вниз

проблема с dll   Найти похожие ветки 

 
zhlog   (2003-03-26 20:17) [0]

Здраствуйте. Столкнулся с проблемой... помогите решить

В своей программе динамически загружаю dll. Отрабатывает она нормально, создает всё что мне надо, но при освобождении памяти вылетает access violation...
function run_dll(dll_name:pchar):byte;
type TMakeDBF = procedure(AForm:TForm;md_Query:tQuery;dlldatabasename:string);
var DLLInstance : THandle;
MakeDBF : TMakeDBF;
begin
Result:=0;
DLLInstance := LoadLibrary(dll_name);
if DLLInstance=0 then
begin
Result:=1;
Exit;
end;
@MakeDBF:=GetProcAddress(DLLInstance, "MakeDBF");
if @MakeDBF<>nil then MakeDBF(Form1,Form1.Query1,Main_Path+"work.dbf") else begin Result:=2; exit; end;
FreeLibrary(DLLInstance);
end;

в чем проблема не пойму


 
Mike_Goblin ©   (2003-03-26 21:14) [1]

Main_Path+"work.dbf" - это string
а DLL очень не любят их :))
в uses DLL первый модуль поставь ShareMem


 
Zelius ©   (2003-03-26 21:59) [2]

кстати, TForm & TQuery тоже не любят при передаче в DLL :)


 
zhlog   (2003-03-27 09:18) [3]

поставил ShareMem и всё заработало :) сенкс



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

Текущий архив: 2003.04.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
8-19704
ec
2003-01-02 15:17
2003.04.07
Сравнить две картинки


14-19785
Феликс
2003-03-19 01:04
2003.04.07
Почему?


1-19527
laptev
2003-03-26 15:55
2003.04.07
Memory&DLL


4-19911
AlexSW
2003-02-06 11:44
2003.04.07
Эмуляция нажатия 2-х клавиш одновремкнно.


1-19624
Soft
2003-03-25 13:12
2003.04.07
Шестнадцатеричный EDIT