那是因为你的那字段为空,程序中我是这样编写的
子函数为
function LoadFromField:boolean;
var
TempStream:TMemoryStream;
begin
// tempstream:=createblobstream(currentfield,bmread);
result:=true;
try
Olecontainer1.LoadFromStream(loadstream);
with OleContainer1 do
DoVerb(ovshow);
except
result:=false;
end;
end;
//loadstream 为table.createblobstream(field,bmread)函数返回的结果
主程序这样写
procedure execute;
begin
if not loadfromfield then
begin
Insert1Click(Sender);//读失败,就新增一个OLE对象。
with OleContainer1 do
if NewInserted then
DoVerb(PrimaryVerb);
end;