直接读到内存流里面进行处理吧!
var
StampStream : TMemoryStrem;
begin
StampStream := TMemoryStream.Create;
try
ADOQuery1.Close;
ADOQuery1.SQL.CLear;
ADOQuery1.SQL.Add('Select BlobField from Table');
ADOQuery1.Open;
ADOQuery1.First;
StampStream.Clear;
TBlobField(ADOQuery1.FieldByName('BlobField')).SaveToStream(StampStream);
// ... do whatever with your stream
finally
StampStream .Free;
end;
end;
var
StampStream : TMemoryStrem;
begin
StampStream := TMemoryStream.Create;
try
ADOQuery1.Close;
ADOQuery1.SQL.CLear;
ADOQuery1.SQL.Add('Select BlobField from Table');
ADOQuery1.Open;
ADOQuery1.First;
StampStream.Clear;
TBlobField(ADOQuery1.FieldByName('BlobField')).SaveToStream(StampStream);
// ... do whatever with your stream
finally
StampStream .Free;
end;
end;
解决方案 »
- 如何传递PSafeArray类型的参数
- 怎样截取字符串asdfasdg#ogadofngdhf#asdfagadgh#测试#?
- 高分请教一下怎样在一个dbgrid的列表头单击取得所单击的对应的字段?
- IdSMTP做发邮件程序时,为什么163的发不了?(在线等~分不够可以加!)
- 苏州的DELPHI程序爱好者聊一聊
- 怎样加载(*.dpk)
- 为了方便大家即使讨论,建了一个VB、delphi开发技术讨论固定群2196990,期待精英的加入
- Locate方法怎么实现多个条件下的查询
- 有个问题请教一下高手
- 无助,彷徨,迷茫:期待你的Up,谢谢。
- 请问各位大大关于random函数的使用方法!
- 大虾们来谈一谈delphi的优缺点!
BMP:创建TBitmap对象,用LoadFromStream读出来(使用TBlobStream),把它画到Printer.Canvas中.
其它图片:同BMP,创建的对象不同,如TJpegImage.
文本或RichText:读到TRichEdit中,调用TRichEdit.Print
OLE对象:创建正确的OLE对象(如用TOleContainer),调用DoVerb('print')
...... ____ ____
\ p \ / g /
\ l \_/ n /
\ a o /
\ i s /
\ n /
\_/