Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#10

Re: DEC onProgress-Ereignis bei mehreren Threads

  Alt 10. Aug 2003, 16:16
Einfacher, TProgressAdapter gibt den Stream den er kapselt selber frei. D.h. FileStream.Free ist in jedem Falle falsch.

Delphi-Quellcode:
ProgressAdapter := TStreamProgressAdapter.Create(TFileStream.Create(FileName, Mode));
try
  ProgressAdapter.Read();
  ProgressAdapter.Write();
finally
  ProgressAdapter.Free;
end;
D.h. der Stream den man einem TStreamProgressAdapter übergibt ist irrelevant und muß nicht mehr als variable gespeichert werden. Alle Stream-Funktionen laufen nur über den ProgressAdapter, er kapselt sozusagen vollständig ein anderes Stream Object. Der Vorteil: statt ihn nur für Progressbars zu nutzen kann er auch beim Lesen/Schreiben Prüfsummen berechnen, zusätzlich komprimieren und vwerschlüsseln. Dazu müssen nur die .Write() .Read() Methoden angepasst werden.

Gruß Hagen
  Mit Zitat antworten Zitat