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

передача переменной TStringList из DLL   Найти похожие ветки 

← →
killer ©   (2004-04-19 17:57) [0]

Подскажите пожалуйста, как передать переменную типа TStringList из DLL в программу


← →
VAleksey ©   (2004-04-19 18:05) [1]

Uses ShareMem

В главном модуле проекта и dll.
Все остальное также как ты сделал бы обычным образом.


← →
Jack128 ©   (2004-04-19 18:10) [2]

так и передать

function MyFunc(sl: TStringList): LongInt; external "mydll.dll" name "MyFunc"

только не забудь, что и dll и основная прога ShareMem должны использовать

Но в общем случае такое делать нельзя (то есть можно, но если компилируешь с рантайм пакетами)


← →
Jack128 ©   (2004-04-19 18:11) [3]

Да и еще - забудь про метод Assign


← →
WebErr ©   (2004-04-19 18:12) [4]


> function MyFunc(sl: TStringList): LongInt; external "mydll.dll"
> name "MyFunc"

Из DLL в программу, а не из программы в функцию из DLL!


← →
VMcL ©   (2004-04-19 18:12) [5]

>>Jack128 ©  (19.04.04 18:10) [2]

AFAIK, можно и без рантаймов. Главное, использовать не DLL, а BPL.


← →
WebErr ©   (2004-04-19 18:12) [6]


> Да и еще - забудь про метод Assign

Assign не метод, а глобальная функция типа Boolean!


← →
Jack128 ©   (2004-04-19 18:13) [7]


> Из DLL в программу, а не из программы в функцию из DLL!
блин, а разница??

> function MyFunc(sl: TStringList): LongInt; external "Project1.exe"
> name "MyFunc"


← →
VMcL ©   (2004-04-19 18:14) [8]

>>WebErr ©  (19.04.04 18:12) [6]

Да ну? TStrings.Assign() ?


← →
WebErr ©   (2004-04-19 18:15) [9]


> VMcL ©   (19.04.04 18:14) [8]

Sorry - я щас просто парюсь с Assigned, вот и чудится мне везде сия нечистая сила!


← →
Jack128 ©   (2004-04-19 18:17) [10]


> AFAIK, можно и без рантаймов. Главное, использовать не DLL,
> а BPL.

В смысле для нормальной работы со строками? а где будет общий менеджер памяти?


← →
killer ©   (2004-04-19 20:55) [11]

а что это за BPL? Что-то типа DLL но круче? :)))


← →
killer ©   (2004-04-19 20:58) [12]

я в программе создаю эту переменную типа str:=TStringList.Create
а в DLL я к этой переменной прибовляю строки str.Add("Test")
а потом программе вывожу эту переменную в ListBox.Items:=str
затем str.Free. Так вот у меня вылитает какая-то ошибка... а если убрать строку str.Free то ошибка не вылитает... но мне не понятно... удаляется ли переменная str из памяти?


← →
Jack128 ©   (2004-04-19 20:59) [13]


> Что-то типа DLL но круче? :)))
точно. Читай про пакеты (packages)



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

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



Память: 0.48 MB
Время: 0.029 c
1-1080018846
LinOS
2004-03-23 08:14
2004.04.11
как открыть html файл в web браузере ОС.


9-1070546076
miek
2003-12-04 16:54
2004.04.11
Предложение


11-1060239393
avakss
2003-08-07 10:56
2004.04.11
KOL и завершение Windows 98


14-1079089350
_none_
2004-03-12 14:02
2004.04.11
небольшой соц.опрос: купили бы вы электроскутер?


3-1081396835
Серж
2004-04-08 08:00
2004.04.11
Как округлить число в процедуре Interbase?




   Наверх