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

Вниз

Типы в C# и Delphi   Найти похожие ветки 

 
zhlob   (2005-09-01 13:45) [0]

Вопрос следующий:
 есть dll-ка, написанная на C#, в ней функция, одним из параметров которой являестся Dest *dest(указатель на структуру Dest). А по сути это ссылка на массив (т.е. в C# обращаются к нему так: dest[i].d=..).
 написан проект на Delhpi, которому надо получать этот список значений. Описана эта структура (Dest), параметр пытался передавать по-разному:
 1. var dest: dest;
 2. PDest = ^Dest;
    dest: PDest;
 3. TDest: array[0..15] of Dest;
    PDest = ^TDest;
    dest: PDest; и т.д.
но всегда получаю не список, а только первый элемент.
Подскажите, плиз, как описать?? Что делать?? Уже голова кипит!!!


 
begin...end ©   (2005-09-01 13:53) [1]

{$R-}

type
 TDestArray = array [0..0] of Dest;
 PDestArray = ^TDestArray;

доступ к i-му элементу массива: PDestArray(параметр_функции)[i]


 
begin...end ©   (2005-09-01 14:04) [2]

> zhlob   (01.09.05 13:45)

Я, видимо, не полностью понялл вопрос, и [1], вероятно, не в кассу.

> написан проект на Delhpi, которому надо получать этот список
> значений.

Если есть сишная функция в DLL, и она должна заполнять этот список, то следует объявить переменную-массив с нужным количеством элементов и передать указатель на неё в функцию:

type
 TDestArray = array [0..X] of Dest;

var
 DestArray: TDestArray;

begin
 Func(..., @DestArray, ...)
end.


 
Игорь Шевченко ©   (2005-09-01 14:46) [3]


> есть dll-ка, написанная на C#


Под .Net, надо полагать ?



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

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

Наверх




Память: 0.47 MB
Время: 0.048 c
4-1122551436
Icar
2005-07-28 15:50
2005.09.25
LPT-порт


14-1125296936
Kerk
2005-08-29 10:28
2005.09.25
Библия: Иосиф.


4-1122710481
ink
2005-07-30 12:01
2005.09.25
взять текст из RichEdit


8-1115611310
Viktop
2005-05-09 08:01
2005.09.25
Проиграть музыку из ресурса


14-1125824649
KilkennyCat
2005-09-04 13:04
2005.09.25
4 сентября. С Днем рождения!