Вниз
Скачать: 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.976 c
4-98945
k@rt
2003-08-25 20:12
2003.10.30
Реестр


7-98915
uno crezo
2003-08-20 07:27
2003.10.30
регистр


1-98633
Cranium
2003-10-16 21:07
2003.10.30
Как определить, что сколько экземпляров заданного уже создано?


1-98553
klyonov
2003-10-09 10:57
2003.10.30
Отрисовка TListBox


7-98903
Erty
2003-08-14 08:04
2003.10.30
Как с помощью кода написать программу для записи на CD-RW




   Наверх