while(CopyFile("c:\\plik1.mp3", "c:\\plik2.mp3", true))
{
ProgressBar1->Position=ProgressBar1->Position+1;
}
Po pierwsze:
CopyFile() zwraca wartosc 0, gdy kopiowanie sie nie powiodlo, jezeli sie powiodlo to wartosc rozna od zera.
nie sprawdzalem, ale w parametrach wpisales, ze CopyFile() ma nadpisywac plik, jezeli takowy juz istnieje, wiec petla bedzie wykonywala sie w nieskonczonosc (poniewaz za kazdym razem CopyFile() zwroci TRUE)
Jezeli chcesz to robic w taki sposob, to musisz odczytywac plik stopniowo (po kilka bajtow) i wtedy ustalac pozycje w ProgressBar.
W BCB mozna uzyc do takiego kopiowania funkcji FileRead() i FileWrite() (szczegoly w pomocy do BCB)