A service is not GUI based, if you want to run as a service it can not have a gui. if you want to run before login, you do not have GUi capabilities.
There are three places to initiate automated runs from:
Curret user waits for a user to be logged in:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
This one might give you what you want, ans is suppose to run regardless of user login.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
This is the default user run profile:
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run
and sometimes there are software specific ones:
HKEY_USERS\S-1-5-21-392521947-209088652-5522801-1075\Software\Microsoft\Windows\CurrentVersion\Run
Jattie van der Linde
Engineering Manager, Software & Automation
TEL Magnetic Solutions Ltd