Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];

Вниз

Организация передачи данных из 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.009 c
3-13061
Andrio
2003-05-17 13:43
2003.06.05
Очередной глюк FireBird или это можно обойти?


1-13196
DDDeN
2003-05-21 17:56
2003.06.05
Добавление версии файла в другие файлы


7-13495
Жук
2003-04-02 16:12
2003.06.05
Закрытие программы


1-13156
Nikos
2003-05-25 16:08
2003.06.05
Как вывести на печать информацию в таблице?


1-13159
Cherepovets
2003-05-21 20:08
2003.06.05
Label, с регистрами!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский