Главная страница
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.052 c
2-1123945723
Саша У
2005-08-13 19:08
2005.09.25
Как правильно сделать одинаковые обработчики для нескольких компо


2-1123960259
AdmeraL
2005-08-13 23:10
2005.09.25
Tcaption перевести в Char?


14-1125085422
Piter
2005-08-26 23:43
2005.09.25
ЦСКА - ЛИВЕРПУЛЬ


3-1124104138
sashuly
2005-08-15 15:08
2005.09.25
Подключение к MS SQL Servery


3-1123763303
Alex_
2005-08-11 16:28
2005.09.25
Проблема с кодировкой