Noch geschickter wäre es doch dafür ein Konstrukt zu schreiben, dass dann wie folgt benutzt werden kann:
Delphi-Quellcode:
LStep := TaskRunner.AddStep;
LStep.Caption := 'Allocating Memory';
LStep.Add( TSubStepDirectory.Create( 'C:\$space' ) );
LStep.Add( ... );
...
LStep := TaskRunner.AddStep;
...
TaskRunner.Run;
Der TaskRunner würde per Event bei jedem Step/SubStep benachrichtigen, Exceptions fangen/protokollieren/weiterreichen (wenn gewünscht), die einzelnen Steps z.B. in einem Thread ausführen, etc.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)