Dobrý den,
dnes na cvičení jsem dělali takovou jednoduchou úlohu na kopírování. Prostě napevno např. zkopírovat soubory z adresáře temp do nějakého zvoleného, to vše pomocí BackgroundWorkeru. To vše mi funguje, ale problém mi nastane, že když dám kopírovat např. 4GB soubor, tak se provede RunWorkerComplete ještě předtím, než se ten soubor kompletně zkopíruje. Tak jestli je nějaká funkce, která počká než se ten soubor dokopíruje a potom začne kopírovat, další soubor?
Zde příkládám svoji část kódu v DoWork:
DirectoryInfo temp = new DirectoryInfo(@"c:\temp\");
FileInfo[] temps = temp.GetFiles();
int i = 0;
foreach (FileInfo a in temps)
{
i++;
backgroundWorker1.ReportProgress(i);
a.CopyTo(@"c:\Kopírování\" + a.Name);
}