我已经编写了一个DataSnap服务器方法,用于返回TStream对象以传输文件。客户端应用程序调用该方法并成功读取流。问题在于,在TStream对象可读之前,方法调用需要较长时间,但在服务器端,我可以看到该方法调用仅需一秒钟即可创建要返回的对象。我希望流对象能够立即返回,以便我可以读取流并显示下载进度条。是否有其他方法可以做到这一点?
该服务器方法非常简单:
该服务器方法非常简单:
function TServerMethods.DespatchDocument(sCompanyID, sDocOurRef: string): TStream;
var
sSourceFilePath: string;
strFileStream: TFileStream;
begin
sSourceFilePath := GetDocumentPDFFilePath(sCompanyID, sDocOurRef);
strFileStream := TFileStream.Create(sSourceFilePath, fmOpenRead);
Result := strFileStream;
end;