Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Сохранить F1Book в Blob поле

01.01.2007
uses vcf1, dbtables;
 
 
procedure
SaveSpreadsheet(F1Book: TF1Book);
var
 
BlobStream: TBlobStream;
 
MyBlob: HGlobal;
  pblob
: Pointer;
begin
 
with Datamodule1.Query1 do
 
begin
    Set8087CW
($133f);
   
try
     
Application.ProcessMessages;
      F1Book
.SaveWindowInfo;
     
MyBlob := GlobalAlloc(GMEM_MOVEABLE, 2000);
     
try
        F1Book
.WriteToBlob(MyBlob, 0);
        pBlob
:= globalLock(MyBlob);
       
try
         
Blobstream := TBlobStream.Create(TBlobField(FieldByName('QUOTE_BLOB')),
            bmWrite
);
         
try
           
Blobstream.Write(pBlob^, GlobalSize(myBlob));
         
finally
           
Blobstream.Free;
         
end;
       
finally
          globalUnlock
(MyBlob);
       
end;
        F1book
.IF1Book_Modified := False;
     
finally
        globalFree
(myblob);
     
end;
   
finally
      Set8087CW
(Default8087CW);
     
Application.ProcessMessages;
   
end;
 
end;
end;
 
//Depending on your Delphi Version (<D4), you will need:
 
var
  Default8087CW
: Word = $1332;
 
procedure Set8087CW
(NewCW: Word);
asm
  MOV     Default8087CW
,AX
  FLDCW   Default8087CW
end;

Взято с сайта https://www.swissdelphicenter.ch/en/tipsindex.php