Тема: TMemoryStream
Показать сообщение отдельно
  #3  
Старый 17.08.2010, 12:42
Maxpoll Maxpoll вне форума
Прохожий
 
Регистрация: 17.08.2010
Сообщения: 2
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
Код:
var
  ...
  b: AnsiString;
  ...
А так же PAnsiChar, AnsiChar и т.д вместо аналогичных.
Ибо в Д2010 по умолчанию юникод, то-бишь двухбайтовый WideString, от него и "лишний" символ.
З.Ы. SizeOf(Char) - улыбнуло, символ сколько байт занимает? Правильно, 1. Лишнее вычесление.

Спасибо! )) По крайней мере с Write сработало ))
А как разобраться когда в Stream пишется вот так:

qryBlobAccess : TCssBlobQuery;
begin
qryBlobAccess.SQL.Clear;
qryBlobAccess.SQL.Add( Statement );
qryBlobAccess.Open;
try
if qryBlobAccess.FieldByName(FieldName).IsNull then
Exit;
Result := TMemoryStream.Create;

(qryBlobAccess.FieldByName(FieldName) as BlobField).SaveToStream(Result);

Result.Position := 0;

Вот в таком виде она тоже "приклеивает" лишнее
Ответить с цитированием