![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Application Server и передача Stream
salexn © (2007-10-19 14:50:00)Доброго дня!
Есть Application Server, у него есть метод GetData. Нужно передавать через него картинки, файлы и т.д. Как это сделать наиболее простым способом?
salexn (2007-10-19 16:53:00) [1]Все разобрался!!! Length подвел...
salexn (2007-10-19 15:46:00) [2]Странно...
На сервере делаю:
aStream := TMemoryStream.Create;
try
TBlobField(IBQuery1.Fields[0]).SaveToStream(aStream);
BufferSize := AStream.Size;(>100 000)
AStream.Position := 0;
HelpData := VarArrayCreate([0, BufferSize - 1], varByte);
BufPointer := VarArrayLock(HelpData);
try
Move(aStream.Memory^, BufPointer^, BufferSize);
finally
VarArrayUnLock(HelpData);
end;
finally
aStream.Free;
end;
На клиенте
Connection.AppServer.GetHelpData(1, aHelpData);
AMemoryStream := TMemoryStream.Create;
try
BufferSize := Length(aHelpData) * 2 + 1;
...
BufferSize = 63!!!
Что не так?
Сергей М. (2007-10-19 14:54:00) [3]
> Как это сделать наиболее простым способом?
Result := VarArrayCreate(..);
.. заполнение Result'а ..
> отелось все это передавать через Stream
Не получится.
salexn (2007-10-19 14:51:00) [4]Да, хотелось все это передавать через Stream, т.к. вроде все эти вещи легко загоняются в Stream