Me acabo de responder yo sólo
En vez de DeleteKey(), pues abres la ruta del registro con OpenKey(), y luego borras el valor que deseas, indicando su nombre, usando DeleteValue(), quedando así el código:
Código:
case iOPcion of
0: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run\',FALSE) then
Registro.DeleteValue('MiPrograma');
1: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',FALSE) then
Registro.WriteString('MiPrograma',ExtractFilePath(ExpandFileName(ParamStr(0)))+'MiPrograma.exe');
end;
Espero que a alguien le sirva de ayuda