Ich hätte da ein paar Kritikpunkte...

1.)
Delphi-Quellcode:
var
Form1: TForm1; zeit,minuten,stunden,s5,soundpfad,installpfad:string; m,posi,zg1,zg2,zg3,zg4,zg5:integer;
Die ganzen Variablen zeit,minuten,... gehören eigentlich unter den Abschnitt private der Form-Klasse.
Globale Variablen sollte man wann immer möglich vermeinden.
Nicht, dass es irgendeinen Unterschied an der Funktionalität machen würde, aber wenn du ein Programm mit sagen wir mal 100 Formularen hast und überall liegen diese globalen Variablen rum, wirst du daran verzweifeln.
2.)
du hast die Namen deiner Steuerelement unverändert gelassen.
Hier ein Beispiel aus deinem Code:
Delphi-Quellcode:
procedure TForm1.CheckBox5Click(Sender: TObject);
var Reg:TRegistry;
begin
If CheckBox5.Checked=True Then
Frag' dich mal kritisch: worum geht's in dem Code?
Und hier der verbesserte Code:
Delphi-Quellcode:
procedure TForm1.ChkAutoStartClick(Sender: TObject);
var Reg:TRegistry;
begin
If ChkAutoStart.Checked Then // beachte: Vergleich mit True ist unnötig
So wird es viel klarer: es geht um die AutoStart-Funktionalität.