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

jpeg + блоб   Найти похожие ветки 

 
zergey   (2003-10-09 14:49) [0]

Добрый день, господа мастера.
Столкнулся со следующей проблемой: в бд, в блобе, хранятся картинки в формате jpeg. При смене записи отрабатывает следующая функция:

var MS: TMemoryStream;
w: TJPEGImage;
begin
MS:= TMemoryStream.Create;
(ADOQuery1.FieldByName("photo") as TBLOBField).SaveToStream(MS);
ShowMessage(IntToStr(MS.Size));
w:= TJPEGImage.Create;
w.LoadFromStream(MS);
Image1.Picture.Assign(w);
MS.Destroy;
w.Destroy;
end;

возникает крайне непонятное исключение: jpeg error # 41. В чем может быть проблема?


 
Дуся   (2003-10-09 15:19) [1]

А в файл сохранять пробовали? Открывается потом?


 
zergey   (2003-10-09 15:22) [2]

2 Дуся
попробовал. Поток сохраняется нормально, а вот jpegimage - пустой. Похоже дело в несовместимости методов TBlobField.SaveToStream и TJPEGImage.LoadFromStream. При использовании временного файла вместо потока все работает. Какие могут быть вариенты (кроме врем. файла)?


 
Дуся ©   (2003-10-09 15:26) [3]

Если те же методы использовались для файла и работали, какая тут может быть несовместимость?..


 
zergey   (2003-10-09 15:31) [4]

для файла использовались TBlobField.SaveToFile
и TJPEGImage.LoadFromFile


 
zergey   (2003-10-09 15:34) [5]

Похоже, проблема решена. Использую TDataSet.CreateBlobStream
Спасибо за советы



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

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



Память: 0.46 MB
Время: 0.014 c
1-98594
aimsyslv
2003-10-19 17:26
2003.10.30
Использование override


3-98527
MsGuns
2003-10-08 17:06
2003.10.30
В гриде - посередине вместо числа


1-98569
Senator
2003-10-20 11:22
2003.10.30
MDI


3-98477
suharew
2003-10-07 23:01
2003.10.30
Ошибки


7-98912
Dimaxx
2003-08-02 22:41
2003.10.30
Отлов сообщения об открытии/закрытии сидюка




   Наверх