parniant
شنبه 16 آذر 1387, 11:12 صبح
با سلام تو برنامم از دستوراتی برای بازیابی عکس استفاده می کنم و در قسمت varاز jpeg استفاده می کنم اما jpeg رو نمی شناسه و می گه jpeg تعریف نشده است بنابراین jpeg رو برمی دارم و تو اجرا می رم اما بعد از اینکه عمل بازیابی عکس رو توسط دستورات زیر انجام می دم پیغام خطا می ده چطور مشکل رو حل کنم delphi6 استفاده می کنم
دستورات برنامم هم اینه
var
pic:TJPEGImage;
stream:TStream;
begin
//sodor_kart.Image1.Stretch:=true;
with ADOQuery2 do
begin
sql.Text:='select * from tteacher where ido= :p1';
Parameters.ParamByName('p1').Value:=sodor_kart.Com boBox5.Text;
Open;
end;
// begin
// sql.Text:='select * from personel where f_name = :p1 and l_name = :p2';
// Parameters.ParamByName('p1').Value:=edit1.Text;
// Parameters.ParamByName('p2').Value:=edit2.Text;
// Open;
// end;
pic:=TJPEGImage.Create;
stream:=ADOQuery2.CreateBlobStream(ADOQuery2.Field ByName('pic'),bmRead);
if stream.Size<>0 then
begin
if copy(ADOQuery2.FieldByName('pic').AsString,1,1)='B ' then
QRDBImage1.Picture.Bitmap.LoadFromStream(stream)
else
begin
pic.LoadFromStream(stream);
QRDBImage1.Picture.Assign(pic);
end;
end
else
QRDBImage1.Picture.Graphic:=nil;
stream.Free;
pic.Free;
ADOQuery3.Close;
ADOQuery3.Open;
adoQuery3.SQL.Clear;
ADOQuery3.Close;
adoquery3.SQL.Add('select post from tteacher');
ADOQuery3.SQL.Add('WHERE (familly LIKE''' + sodor_kart.combobox3.TEXT+'%'')and(name LIKE''' + sodor_kart.ComboBox2.TEXT+'%'')and(ido LIKE''' + sodor_kart.ComboBox5.TEXT+'%'')');
adoQuery3.Open;
adoQuery3.First;
while not adoQuery3.Eof do
begin
QRDBText5.Caption:=(ADOQuery3.FieldValues['post']);
adoQuery3.Next;
end;
report_one.QuickRep1.Preview;
end;
پیغام خطاش اینه
project project1.exe raised exception class EInvalid Graphic with message "Bitmap is not valid".process stopped.use step or Run to countinue
دستورات برنامم هم اینه
var
pic:TJPEGImage;
stream:TStream;
begin
//sodor_kart.Image1.Stretch:=true;
with ADOQuery2 do
begin
sql.Text:='select * from tteacher where ido= :p1';
Parameters.ParamByName('p1').Value:=sodor_kart.Com boBox5.Text;
Open;
end;
// begin
// sql.Text:='select * from personel where f_name = :p1 and l_name = :p2';
// Parameters.ParamByName('p1').Value:=edit1.Text;
// Parameters.ParamByName('p2').Value:=edit2.Text;
// Open;
// end;
pic:=TJPEGImage.Create;
stream:=ADOQuery2.CreateBlobStream(ADOQuery2.Field ByName('pic'),bmRead);
if stream.Size<>0 then
begin
if copy(ADOQuery2.FieldByName('pic').AsString,1,1)='B ' then
QRDBImage1.Picture.Bitmap.LoadFromStream(stream)
else
begin
pic.LoadFromStream(stream);
QRDBImage1.Picture.Assign(pic);
end;
end
else
QRDBImage1.Picture.Graphic:=nil;
stream.Free;
pic.Free;
ADOQuery3.Close;
ADOQuery3.Open;
adoQuery3.SQL.Clear;
ADOQuery3.Close;
adoquery3.SQL.Add('select post from tteacher');
ADOQuery3.SQL.Add('WHERE (familly LIKE''' + sodor_kart.combobox3.TEXT+'%'')and(name LIKE''' + sodor_kart.ComboBox2.TEXT+'%'')and(ido LIKE''' + sodor_kart.ComboBox5.TEXT+'%'')');
adoQuery3.Open;
adoQuery3.First;
while not adoQuery3.Eof do
begin
QRDBText5.Caption:=(ADOQuery3.FieldValues['post']);
adoQuery3.Next;
end;
report_one.QuickRep1.Preview;
end;
پیغام خطاش اینه
project project1.exe raised exception class EInvalid Graphic with message "Bitmap is not valid".process stopped.use step or Run to countinue