Delphi XE2 DataSnap - Télécharger le Fichier via TStream Avec Barre de Progression

J'ai écrit un serveur DataSnap méthode qui retourne un TStream objet le transfert d'un fichier. Le client de l'application appelle la méthode et lit le flux d'amende. Mon problème est que l'appel de la méthode prend un certain temps avant de le TStream objet est disponible à la lecture, mais sur le côté serveur, je peux voir que l'appel de la méthode ne prend qu'une seconde pour créer l'objet de retour. J'espérais que l'objet de flux de données serait retourné immédiatement afin que je puisse lire le flux et afficher une barre de progression pour la progression du téléchargement. Est-il un autre moyen que je peux faire?

Le serveur de la méthode est très simple :

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;

OriginalL'auteur Jonathan Wareham | 2012-01-17