Главная страница
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.014 c
4-19932
Radimir
2003-02-07 13:27
2003.04.07
Очистка памяти


3-19445
новый
2003-03-18 16:06
2003.04.07
Как в IB(FireBird) узнать версию билда?


6-19717
Ozone
2003-02-13 07:46
2003.04.07
Проверка Email (есть/нет)


6-19715
Карелин Артем
2003-02-14 10:06
2003.04.07
NMUDP. Есть вопросы.


7-19909
Adil
2002-11-24 08:10
2003.04.07
Keyboard