Du musst der Oberfläche auch die Chance geben das Label zu aktualisieren. Entweder ein Application.ProcessMessages in die Schleife, dann hast du aber auch gewissen Nebeneffekte. Oder ein die Methode Update von TLabel aufrufen. Oder du lagerst das ganze in einen Thread aus mit der TThread Klasse am besten. Dann aber darauf achten, dass
GUI Zugriffe nur synchronisiert6 erfolgen dürfen.