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

Вниз

Аналог TStringAdapter в КОЛ ?   Найти похожие ветки 

 
DmiSb   (2004-08-17 07:39) [0]

Уважаемые мастера, подскажите есть ли такая штука в КОЛ ?


 
DmiSb   (2004-08-17 12:33) [1]

Виноват, нужен аналог TStreamAdapter


 
Gandalf ©   (2004-08-17 23:20) [2]

Нет таких - есть Stream


 
DmiSb   (2004-08-18 08:32) [3]

Может кто подскажет как привести тип PStream в IStream. В VCL для этого используется сл. структура:
 
 IStream:=TStreamAdapter.Create(TStream);

У меня не получается создать аналог TStreamAdapter
Пишу следующее (при этом делаю замену Sysdcu на КОЛовские):
 
TKOLStreamOwnership = (soReference, soOwned);

 PKOLStreamAdapter = ^TKOLStreamAdapter;
 TKOLStreamAdapter = class(TInterfacedObject, IStream)
 private
   FStream: PStream;
   FOwnership: TKOLStreamOwnership;
 public
   constructor Create(Stream: PStream; Ownership: TKOLStreamOwnership = soReference);
   destructor Destroy; override;
   property Stream: PStream read FStream;
   property StreamOwnership: TKOLStreamOwnership read FOwnership write FOwnership;
 end;

Выходят ошибки
[Error] MainU.pas(71): Undeclared identifier: "Seek"
[Error] MainU.pas(71): Undeclared identifier: "SetSize"
[Error] MainU.pas(71): Undeclared identifier: "CopyTo"
[Error] MainU.pas(71): Undeclared identifier: "Commit"
[Error] MainU.pas(71): Undeclared identifier: "Revert"
[Error] MainU.pas(71): Undeclared identifier: "LockRegion"
[Error] MainU.pas(71): Undeclared identifier: "UnlockRegion"
[Error] MainU.pas(71): Undeclared identifier: "Stat"
[Error] MainU.pas(71): Undeclared identifier: "Clone"
[Error] MainU.pas(71): Undeclared identifier: "Read"
[Error] MainU.pas(71): Undeclared identifier: "Write"

То есть не понятны методы интерфейса IStream, хотя IStream описан
в файле system для КОЛ. Получается для КОЛ Интерфейсы строятся по
другому. Может кто знает, в чем соль ?


 
SPeller ©   (2004-08-18 12:58) [4]

Все ненайденные методы должны быть описаны в твоем объекте. Сначала научитесь работать с интерфейсами вообще, а уж потом в КОЛ их пристраивайте.


 
DmiSb   (2004-08-18 13:29) [5]

Да я вроде и не говорил, что являюсь специалистом по интерфейсам. Реализация для VCL взята из инета, она прекрасно работает. Мне не пришлось никакие интерфейсы изучать. Но для КОЛ нужно это делать как-то по другому. Вот и задал вопрос. Согласен на любую помощь. Тока просьба не материть.  

>2 Speller
Я начал учиться, просто попалось это.


 
SPeller ©   (2004-08-18 15:17) [6]

Кстати, я не посмотрел. У вас всё-равно класс, поэтому KOL ткт абсолютно непричем. Указатель на класс - это извращенство, потому как классовая переменная - это уже указатель.



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

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

Наверх




Память: 0.48 MB
Время: 0.022 c
1-1092736455
FastByte
2004-08-17 13:54
2004.09.05
Унарный минус в ОПЗ


1-1092905242
ferr
2004-08-19 12:47
2004.09.05
WebBrowser


4-1090405878
sashuly
2004-07-21 14:31
2004.09.05
отлов русских букв с OnKeyDown


8-1087299715
Ruslan
2004-06-15 15:41
2004.09.05
А как воспроизводить потоковый звук ?


3-1092041079
ivc_andr
2004-08-09 12:44
2004.09.05
не могу соединиться с сервером приложений