Das passierte bei Bildern ganz gerne mal, wenn der Windows Explorer noch ein
Handle für die Vorschau offen hatte. Oder auch bei Virenscannern.
Eigentlich sollte das aber nicht mehr auftreten, denn seit Windows 8 kehrt die Funktion zum Löschen normalerweise erst zurück, wenn das Löschen nicht nur erfolgreich, sondern auch komplett abgeschlossen ist.
Warum löschst du eigentlich vorher und gibst nicht einfach als dritten Parameter an TFile.Copy True mit? Denn wenn du direkt angibst, dass die Zieldatei überschrieben werden soll, hast du doch den gleichen Effekt, nur ohne zusätzliches Löschen.