Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.05;
Скачать: CL | DM;

Вниз

Как прочитать формат JPEG из SQLServer 2000   Найти похожие ветки 

 
JurMax ©   (2002-11-18 20:28) [0]

Написал приложение на Delphi-6. БД - на SQL Server 2000. Связь через ADO.
Картинки формата bmp вставляются и читаются без проблем. Однако картинки другого формата, например jpg прочитать не могу.
Пробовал написать процедуру(см. ниже) - не работает, выдает ошибку. Через Access графика любого формата читается и записывается в БД без замечаний.

procedure TDataModule1.ADODataSet1AfterScroll(DataSet: TDataSet);
var
Bitmap : TBitmap;
BS : TADOBlobStream;
begin
try
BS:=TADOBlobStream.Create(ADODataSet1_foto, bmRead);
BS.Seek(78, soFromBeginning); //пропускаем заголовок памяти OLE
Bitmap:=TBitmap.Create; //создаем растровое изображение
Bitmap.LoadFromStream(BS); //загружаем графическое изображение (фото) из потока
Form1.DBImage1.Picture.Graphic:=Bitmap; //отображаем фото
// освобождаем память
finally
Bitmap.Free;
BS.Free;
end; //try }
end; // procedure TDataModule1.ADODataSet1AfterScroll(DataSet: TDataSet);


Как прочитать формат JPEG из SQLServer 2000 в приложение, написанное на Delphi 6


 
asmith   (2002-11-18 21:11) [1]

Используй вместо TBitmap класс TJPEGImage, у него также есть метод LoadFromStream.


 
shiling   (2002-11-19 06:49) [2]

Вот примерчик, но через временный файл на диске (так мне надо было)
var
tmpfile,tmpjpgfile : String;
jpeg : TJpegImage;
bm : TBitMap
begin
bm:=TBitMap.Create;
jpeg:=TjpegImage.create;
randomize();
tmpjpgfile:=pchar("c:\tmp\"+inttostr(random(maxint))+".jpg");
jpgfilename:=tmpjpgfile;
(dmdata.qetmp.FieldByName("img") as tblobfield).SaveToFile (tmpjpgfile);
jpeg.LoadFromFile(tmpjpgfile);
bm.Assign(jpeg);
jpeg.Free;
....
....
....
bm.Free;
end;


 
iNew ©   (2002-11-19 07:43) [3]

DbImage не поддеоживает JPEG.



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

Текущий архив: 2002.12.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
14-14770
Filat
2002-11-13 18:09
2002.12.05
Как обойти??!! Не ставится Delphi 5 на Windows 2000 Adv. Server!


3-14446
Alex_Sudakov
2002-11-15 13:44
2002.12.05
SQLDMO


3-14467
Максим Шурыгин
2002-11-18 09:46
2002.12.05
Непонятный глюк.


1-14598
OGR
2002-11-27 15:32
2002.12.05
Как удалить из строки n последних символов?


14-14738
Anatoly Podgoretsky
2002-11-14 00:56
2002.12.05
Именинники 14 ноября