Вниз
Скачать: 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
3-98503
Кирилл
2003-10-09 13:02
2003.10.30
потерян пароль


14-98834
PHPAsker
2003-10-08 03:52
2003.10.30
Телефонная книжка


1-98704
md
2003-10-20 21:47
2003.10.30
получение информации о файле


1-98682
Sweeft
2003-10-21 13:09
2003.10.30
Научите как покорить TTreeView


14-98884
smike
2003-10-10 12:00
2003.10.30
Borland придумала какой то новый C++BuilderX ...




   Наверх