![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Передача массива данных
ivs © (2004-05-08 13:36:00)С сервера на клиент необходимо передать около 100кб данных (текст). Текст преобразуется в многомерный Variant array и передается, но очень долго на слабых каналах, есть подозрение, что передается намного больше исходных 100кб. Может кто что-то посоветует?
Erik (2004-05-13 14:16:00) [1]Запихни все в одномерный.
VData := VarArrayCreate([0, SizeMem], varByte);
PData := VarArrayLock(VData);
MoveREx(@RecSize, PData, i, SizeOf(RecSize));
procedure MoveEx(const P1, P2: PByteArray; var Index: Integer; Size: Integer);
begin
Move(P1^[Index], P2^, Size);
Inc(Index, Size);
end;
Обязательно varByte, а то будут ресурсы на перепаковку тратится!
Бином Ньютоныч (2004-05-09 10:40:00) [2]>ivs (08.05.04 13:36)
>Текст преобразуется в многомерный Variant array...
>есть подозрение, что передается намного больше исходных 100кб
Правильное подозрение. А зачем многомерный-то?
Emperor (2004-05-08 16:50:00) [3]долго это сколько и на какие каналы- слабые
VMcL (2004-05-08 16:02:00) [4]>>ivs (08.05.04 13:36)
Может стоит текст упаковать, например, с помощью zlib?