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

TStringList и DCOM   Найти похожие ветки 

← →
Maxim Pshevlotsky ©   (2003-06-03 08:48) [0]

Здравствуйте мастера! Проблема с TSTringList. В DCOM обьекте(Удаленный модуль данных) есть обьявление подпрограммы что-то типа

function ABC: TSTringList;
begin
Result:=TStringList.Create;
...
end;


Так вот, когда идет обращение к этому обьекту и передача параметров другому обьекту типа TStringList,то при обращении к этому другому обьекту возникает ошибка.


Почему такое происходит?


← →
Skier ©   (2003-06-03 08:51) [1]

>Maxim Pshevlotsky
Насколько я помню, для работы со строками в COM, есть специальный
интерфейс IStrings


← →
Goffman ©   (2003-06-03 09:06) [2]


> есть специальный
> интерфейс IStrings

Правда в d7 я его не нашел, поэтому пришлось через Variant


← →
Skier ©   (2003-06-03 09:11) [3]

>Goffman © (03.06.03 09:06)

> Правда в d7 я его не нашел

Может быть...не знаю, но в вопросе стоит D6 :)


← →
Maxim Pshevlotsky ©   (2003-06-03 09:12) [4]

Skier © (03.06.03 08:51)

IStrings есть, но он там какой-то видоизмененный, хранить там можно данные типа OleVariant - а он дорого обходится(в смысле экономии памяти).


← →
Maxim Pshevlotsky ©   (2003-06-03 09:14) [5]

И еще там нельзя добавлять обьекты(AddObject)


← →
Goffman ©   (2003-06-03 09:25) [6]


> вопросе стоит D6

Сорри, бес попутал


> он там какой-то видоизмененный

Видимо что-то борландовцев не устроило, и они решили отказаться от интерфейса, но как-то мягко:-)

Насчет экономии памяти, скорее всего данные из интерфеса передаются как Variant Array, т.е. пачкой, а не по одному, поэтому нет лишних расходов.

зы: Но это лишь мое мнение


← →
Набережных С. ©   (2003-06-03 18:22) [7]

>Maxim Pshevlotsky © (03.06.03 09:12)
>Goffman © (03.06.03 09:25)

Фундаментальное правило COM:
Единожды опубликованный интерфейс НИКОГДА не может быть изменен.

>Maxim Pshevlotsky ©

Было бы странно, если бы ошибки не возникало.

>И еще там нельзя добавлять обьекты(AddObject)

А он там и не нужен, т.к. бессмысленен. Используй интерфейс.


← →
Serginio   (2003-06-03 18:26) [8]

А про много поточность и синхронизацию не забыл???


← →
Набережных С. ©   (2003-06-03 21:46) [9]

>Serginio (03.06.03 18:26)

Кто, я? Да вроде нет, не забыл. Только при чем здесь это?



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

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



Память: 0.47 MB
Время: 0.01 c
9-50199
Анат
2002-10-11 23:50
2003.06.16
Огонь


8-50400
Tolea
2003-02-27 17:02
2003.06.16
Помогите нарисовать гладкии график


14-50489
Piero
2003-05-30 13:42
2003.06.16
Где взять Delphi5 UpDate ?


1-50351
Zigs
2003-06-03 19:33
2003.06.16
Подскажите, плз, как прижатии кнопки (TButton) вписать символ


1-50374
pathfinder
2003-06-04 01:20
2003.06.16
opendialog.filename...




   Наверх