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

Вниз

Организация передачи данных из DLL   Найти похожие ветки 

 
Navi ©   (2003-05-24 08:59) [0]

Здравствуйте!
Есть DLL, выполняющая загрузку данных из файла и помещающая их в record (здесь данные неоднородные: поля типа "заголовок файла", "заголовок раздела" и т.п., и далее открытий массив или TList). Этот record необх. передавать приложению. Я так понимаю, что передавать надо указатель или в вызывающей ф-и делать параметр этой record как var.
Вопрос: как правильно сделать? И желательно, что-бы этим могло бы воспользоваться приложение и на C.
Спасибо.


 
Palladin ©   (2003-05-24 10:12) [1]

dll сама ничего не передает и ничего не грузит, в данном случае она лишь содержит механизм загрузки, который вызывается приложением...
ну я не думаю что очень было трудно реализовать функцию в dll

myDllLoadRecord(MyRec:PMyRecord); stdcall;

на экспорт, где PMyRecord что то вроде

type
PMyRecord=^TMyRecord;
TMyRecord=record
x1,x2:integer;
end;

естественно ты должен описать этот тип в точности так же и в главном приложении, если хочешь еще добавить возможность использования dll и в сях, то тогда естественно ты должен позаботится о совместимости используемых в записи типах, учти что вместо string необходимо станет использовать pchar, о TList забудь, используй только выделение памяти и указатели на массивы...



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
1-13210
jack100
2003-05-27 11:43
2003.06.05
Раскладка клавиатуры


14-13373
Mike Kouzmine
2003-05-19 17:15
2003.06.05
Новые виды вооружений. Готова ли Россия к современной войне?


3-13100
Pat
2003-05-18 23:24
2003.06.05
Опять Access+ADO под ХР


1-13319
Flex
2003-05-25 01:39
2003.06.05
Как получить фокус ввода, при exception?


1-13129
Doc
2003-05-26 00:13
2003.06.05
Как получить на выходе вместо запятой, точку?