Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.10.2010, 11:56   #1
sneksnek2006
Пользователь
 
Регистрация: 23.09.2009
Сообщений: 13
По умолчанию совместимость TList в Delphi и C++Builder

Здравствуйте!
Имеется программа написанная в Delphi. Я пишу dll в C++Builder.
Основная программа передает через функцию параметр типа TList в dll:

Function ReadSpectr(PProc:TProgressProc;
Relay: Boolean;
Num,
SumBy:Integer;
ExpTime,
DelayAfterFire,
IVSDelay : Double;
lst : TList) :Boolean; stdcall; external 'OMA2.DLL';

В dll все параметры кроме lst читаются. Проверяю просто:
ShowMessage(Num);
ShowMessage(IVSDelay);
...
ShowMessage(lst.Count); //вместо 5 пишет 5212057
ShowMessage(lst.Capacity); //вместо 8 пишет 1243592

ВОПРОС: Почему не передается параметр типа TList?
sneksnek2006 вне форума Ответить с цитированием
Старый 25.10.2010, 13:36   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А если передавать по параметру-переменной
var lst : TList
Как тогда ведет себя ДЛЛ?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 25.10.2010, 14:41   #3
sneksnek2006
Пользователь
 
Регистрация: 23.09.2009
Сообщений: 13
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А если передавать по параметру-переменной
var lst : TList
Как тогда ведет себя ДЛЛ?
Та же ситуация.
Да кстати.Забыл упомянуть.Программа написана на Delphi5, а Dll пишу в C++Builder6. Может в этом проблема?
sneksnek2006 вне форума Ответить с цитированием
Старый 25.10.2010, 15:03   #4
sneksnek2006
Пользователь
 
Регистрация: 23.09.2009
Сообщений: 13
По умолчанию

Всем спасибо! Помогли мне разобраться.
Если кому-нибудь пригодиться, то делается так:
в С++ требуется объявлять параметр как TList *lst, а доступ к нему осуществлять например так lst->Count

Моя ошибка была в том что я делал так:
TList lst
lst.Count
sneksnek2006 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Совместимость других программ с Delphi Elitman Общие вопросы Delphi 2 10.05.2010 18:49
TList->Sort ongleb Общие вопросы C/C++ 0 12.03.2010 14:58
Сортировка TList prikolist Общие вопросы C/C++ 0 27.04.2009 21:48
Tlist - Сортировка MAcK Компоненты Delphi 1 03.09.2007 15:24