【发布时间】:2021-01-16 23:13:07
【问题描述】:
我正在尝试使用 intraweb 14.0.32、delphi xe6 和 MSSQL 服务器部署 Web 应用程序。我需要在用户单击文件名时显示邮件的附件。这是我执行该操作的代码。问题是当用户单击链接以显示附件时,文件将下载到用户的计算机,但应用程序锁定显示加载页面。所以请帮我找出问题。谢谢。
procedure TMailMgr_f.IWDBGrid2Columns0Click(ASender: TObject;const AValue: string);
var
blob:TStream;
qryAttach:TADOQuery;
fileName:string;
begin
qryAttach:=TADOQuery.Create(self);
qryAttach.Connection:=ADOConnection1;
qryAttach.SQL.Add(format('SELECT OrginalFileName,Attachment FROM Mail_Attachmentwhereid=%s'[AValue]));
qryAttach.Active:=true;
blob := qryAttach.CreateBlobStream(qryAttach.FieldByName('Attachment'),
bmRead);
fileName:=qryAttach.FieldByName('OrginalFileName').AsString;
qryAttach.Close;
WebApplication.SendStream(blob,true,'image/jpeg',fileName);
end;
【问题讨论】: