Moin Wolle,
was an dem Code
Delphi-Quellcode:
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True);
Reg.WriteString('TempCleaner','"' + ParamStr(0) + '" ' + ParamStr(1) + ' "' + ParamStr(2) + '"');
Reg.CloseKey;
finally
Reg.Free;
end;
end;
jeden Fall noch verbesserungswürdig ist:
OpenKey ist eine Funktion, die einem den Erfolg durch ihr Ergebnis mitteilt.
Soll heissen: Wenn OpenKey fehlgeschlagen ist, machen die Ausführung von WriteString und CloseKey keinen Sinn.
Delphi-Quellcode:
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True) then begin
try
Reg.WriteString('TempCleaner','"' + ParamStr(0) + '" ' + ParamStr(1) + ' "' + ParamStr(2) + '"');
finally
Reg.CloseKey;
end;
end;
finally
Reg.Free;
end;
end;
Der weitere Try/finally-Block (er kann auch das begin/end ersetzen) sichert dann noch das schliessen des Keys ab, falls WriteString fehlschlägt.