function LancerAuDemarrage(const AppName: string;
AllUsers, OnlyOnce: Boolean): Boolean;
const
USERS: array[Boolean] of Cardinal = (HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE);
KEY = 'Software\Microsoft\Windows\CurrentVersion\%s';
KEY_ONCE: array[Boolean] of string = ('Run', 'RunOnce');
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := USERS[AllUsers];
Result := Reg.OpenKey(Format(KEY, [KEY_ONCE[OnlyOnce]]), True);
if Result then
Reg.WriteString(AppName, Application.ExeName);
finally
Reg.Free;
end; // try.
end;