uses
Registry;
procedure SetAutoStart(AppName, AppTitle: string; bRegister: Boolean);
const
RegKey = '\Software\Microsoft\Windows\CurrentVersion\Run';
// or: RegKey = '\Software\Microsoft\Windows\CurrentVersion\RunOnce';
var
Registry: TRegistry;
begin
Registry := TRegistry.Create;
try
Registry.RootKey := HKEY_LOCAL_MACHINE;
if Registry.OpenKey(RegKey, False) then
begin
if bRegister = False then
Registry.DeleteValue(AppTitle)
else
Registry.WriteString(AppTitle, AppName);
end;
finally
Registry.Free;
end;
end;
//例子
procedure TForm1.Button1Click(Sender: TObject);
begin
SetAutoStart(ParamStr(0), 'Title of your Application', True);
end;