Главная страница
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.021 c
6-19739
Sr_pr
2003-02-16 02:00
2003.04.07
Receive bytes (Winsock)


7-19877
MixerPro
2003-02-12 16:06
2003.04.07
Как определить высоту в пикселях Caption формы?


4-19925
Dmitry_Koteroff
2003-02-07 23:30
2003.04.07
Написание аналога ps в Win32


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


1-19545
les
2003-03-26 16:15
2003.04.07
Как посмотреть что внутри BPL