Вниз
Скачать: CL | DM;

Набор данных из DLL.   Найти похожие ветки 

 
АлексейК   (2003-05-26 05:46) [0]

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


 
Ru ©   (2003-05-26 10:14) [1]

record?


 
DiamondShark ©   (2003-05-26 11:27) [2]

Если обе ДЛЛ (или ДЛЛ и ЕХЕ) на Дельфи, то подключаем ШареМем и забываем про проблемы.

Если же не известно, на чём написан клиент, то сложнее. Тут вырианты могут быть такие:
1) Структуры распределяются самой библиотекой; ко всему, библиотека ещё предоставляет функции освобождения этих структур
2) Ответственность за распределение возлагаем на клиента.


 
АлексейК   (2003-05-26 12:33) [3]

Поясняю. Допустим функция из DLL должна вернуть нечто подобное.
TMyType = Record
f1:array of integer;
f2:array of integer;
f3:string;
f4:integer;
f5:array [1..10] of Double;
....
end;
То есть структурированный набор данных.
И если
a:array ...;
b:array ...;
то уже не получится a=b, к тому же они зашиты как поля рекорде. Следовательно нельзя присвоить переменной типа TMyType результат работы функции.


 
Palladin ©   (2003-05-26 12:42) [4]

ты не отметил ключевую подробность, dll и приложение у тебя написаны при помощи делфи?


 
Ru ©   (2003-05-26 12:53) [5]

function MyFunc(...):TMyType;stdcall; ?


 
АлексейК   (2003-05-26 13:00) [6]

>Palladin
На Delphi и только пока для Delphi.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
14-34974
iNew
2003-05-28 08:22
2003.06.12
Кому-нибудь попадался компонент с нормально реализованным


3-34745
Юлия
2003-05-23 19:11
2003.06.12
Уникальный индекс


1-34809
Gimer
2003-06-02 17:09
2003.06.12
Rorate TImage with JPEG


4-35105
Василий Петрович
2003-04-13 23:49
2003.06.12
Координаты курсора


3-34701
rosl
2003-05-23 07:39
2003.06.12
sql




   Наверх