Ich habe es nicht getestet, aber es müsste so ungefähr ausschauen. Auf deinen Fehler kann man ohne Code natürlich nicht näher eingehen.
Delphi-Quellcode:
ProgressBar1.Max := ListBox1.Items.Count;
for i := 0 to Listbox1.Items.Count - 1 do
begin
CopyFile(IncludeTrailingPathDelimiter(ListBox1.Items[i]) + ListBox2.Items[i], ...);
ProgressBar1.Position := i + 1;
Application.ProcessMessages; // evtl. hast du das vergessen
end;