着急!!!!(100分)

  • 主题发起人 主题发起人 alei_nb
  • 开始时间 开始时间
A

alei_nb

Unregistered / Unconfirmed
GUEST, unregistred user!
table1.Close ;
table1.Open ;
table1.last ;
table1.Edit ;
a:=TBlobStream.Create(TBlobField(Table1.FieldByName('modul_text')) , bmread);
str.LoadFromStream(a);


运行出错说 access voilation 奇怪啊,为什么a 会access voilation???
 
你的a没释放?
 
Table1.FieldByName('modul_text')) 会不会是空?
 
先看a有没有被赋值
再来loadfrom
 
>>TBlobStream.Create(TBlobField(Table1.FieldByName('modul_text')) , bmread);

var a:TStringStream;
str:TJPEGImage;
......
try
a:=TStringStream.Create('');
TBlobField(Table1.FieldByName('modul_text')).SaveToStream(a);
a.Position:=0;
str:=TJPEGImage.Create;
str.LoadFromStream(a);
finally
......
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
a: TBlobStream;
str: TStream;
begin
a:= TBlobStream.Create(Table1Notes, bmRead);
try
Table1.Edit;
str := Table1.CreateBlobStream(Table11.FieldByName('Remarks'), bmReadWrite);
try
Str.CopyFrom(a, a.Size);
Table1.Post;
finally
str.Free;
end;
finally
a.Free; //一定要释放掉
end;
end;
 
低级错误。
a:=TBlobStream.Create(TBlobField(Table1.FieldByName('modul_text')) , bmread);
中字段‘modul_text’的定义有问题.你必须定义为流字段(Memo,Text等,各种数据库支
持的类型不一样).
 
同意 hostinglian的说法!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
2K
import
I
I
回复
0
查看
758
import
I
后退
顶部