var
  a: TBlobStream;a := TBlobStream.Create(TBlobField(query1.FieldByName('Image'), bmRead);
oleContainer1.LoadFromStream(a);
a.Free;

解决方案 »

  1.   

    我式过了。
    提示ole err:80030050
      

  2.   

    你用的是什么DataSet,如果是ADO控件,需要修改一下:
    var
      a: TStream;a := TADOBlobStream.Create(TBlobField(adoquery1.FieldByName('Image'), bmRead);
    oleContainer1.LoadFromStream(a);
    a.Free;
      

  3.   

    你用的是什么DataSet,如果是ADO控件,需要修改一下:
    var
      a: TStream;a := TADOBlobStream.Create(TBlobField(adoquery1.FieldByName('Image'), bmRead);
    oleContainer1.LoadFromStream(a);
    a.Free;
      

  4.   

    我用的是bde
    不行啊,E-mail可以给我吗?
      

  5.   

    var  strstream:Tmemorystream;
    begin
    OleContainer1.DestroyObject;
            strstream := Tmemorystream.Create;        query2.Close;
            query2.sql.clear;
            query2.SQL.Add('select qw from oadbo.bw_qwb where wjid =' + inttostr(lwid)
                           + ' and kzm = "doc"');
            query2.open ;
            query2.First;        Tblobfield(query2.fieldbyname('qw')).savetostream(strstream);
            strstream.position:=0;
            OleContainer1.loadfromstream(strstream);
            //olecontainer1.Doverb(ovShow);
            strstream.free;
            end;
    end;
      

  6.   

    var
     mem: TmemoryStream;
    begin
     mem := TMemeory.Create;
     try
       Tblobfield(query1.fieldbyname('word')).savetostream(mem);
       OleContainer1.loadfromstream(mem);
     finally
       mem.Free;
     end;
      

  7.   

    对不器,优点差别var
     mem: TmemoryStream;
    begin
     mem := TMemeory.Create;
     try
       Tblobfield(query1.fieldbyname('word')).savetostream(mem);
       mem.Position := 0;
       OleContainer1.loadfromstream(mem);
     finally
       mem.Free;
     end;