To run your application automatically after Windows starts, you just need to create an entry in autorun registry key.
and for all users, use this key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
This code will make autorun entry for all users:
uses Registry; ... procedure AddEntryToRegistry; var key: string; Reg: TRegIniFile; begin key := '\Software\Microsoft\Windows\CurrentVersion\Run'; Reg := TRegIniFile.Create; try Reg.RootKey:=HKEY_LOCAL_MACHINE; Reg.CreateKey(Key); if Reg.OpenKey(Key,False) then Reg.WriteString(key, 'MyApp', 'c:\MyApp.exe'); finally Reg.Free; end; end;
To remove this entry, just call this procedure:
uses Registry; ... procedure RemoveEntryFromRegistry; var key: string; Reg: TRegIniFile; begin key := '\Software\Microsoft\Windows\CurrentVersion\Run'; Reg:=TRegIniFile.Create; try Reg.RootKey:=HKey_Local_Machine; if Reg.OpenKey(Key,False) then Reg.DeleteValue('MyApp'); finally Reg.Free; end; end;
Sometimes, you just need to autorun your application just once (after first reboot of system). You can use these registry keys to achieve this:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου