Einzelnen Beitrag anzeigen

Adversus

Registriert seit: 12. Jan 2006
12 Beiträge
 
#5

Re: Größe einer "unfertigen" Datei...?

  Alt 28. Apr 2006, 13:19
mir fiel grad was auf: mein programm was das verwendet soll ne ganze liste von dateien kopieren...hab zu testzwecken mehrere klein dateien und ne große 700mb datei in die liste gesteckt. wo ich die nun kopiert hab ging der progress viel zu schnell für die 700mb-datei...als ich jetz grad nur die 700er so kopiert hab hats gestimmt...das problem muss also woanders liegen..nämle in meiner schleife für die liste:

Delphi-Quellcode:
for x:=0 to copylist2.Items.Count-1 do
    begin
      s:=ExcludeTrailingPathDelimiter(Edit17.text+copylist2.Items[x].SubItems[1]);
      s:=ExcludeTrailingPathDelimiter(ExtractFilePath(s));

      //Verzeichnisse erstellen
      if not DirectoryExists(s) then
      begin
         log.Items.Add.text:=('Erstelle Ordner: '+s);
         if not ForceDirectories(s) then
         raise Exception.Create('Verzeichnis kann nicht erstellt werden: '+ s);
      end;

      log.Items.Add.text:=(Edit17.text+copylist2.Items[x].SubItems[1]);
      Application.ProcessMessages;

      //Copy-Thread einleiten
      New(Params);
      Params.Source := copylist2.Items[x].SubItems[0]+copylist2.Items[x].SubItems[1];
      Params.Dest := ExcludeTrailingPathDelimiter(Edit17.text)+copylist2.Items[x].SubItems[1];
      Params.Handle := Handle;
      CloseHandle(BeginThread(nil, 0, @CopyExThread, Params, 0, ThreadID));

      copyProgressBar2.Position:=copyProgressBar2.Position+1;

     end;

    end;
...irgendwie wird da das copyProgressBar2.Position:=copyProgressBar2.Positi on+1 schon aufgerufen obwohl der thread noch gar ni fertig is...wie kann ich das jetz verhindern ???? reicht es da dieses FlushFile-Ding aufzurufen ???
  Mit Zitat antworten Zitat