Running applications even when signed off?
Some applications still run when you sign off, like Logmein. How do those applications work and how to make your own application run when logged off?
Solution 1:
Applications that run when there is no user logged in are called Services. They are usually system-level applications that do things for the computer rather than programs with interfaces that you would do things with.
LogMeIn will run as a service so that you can remote into the system and manage it when you are not physically at the computer.
Most applications can be set to run as a service using simple and freely available tools. However, most applications do not do things that would benefit from being run as services.
If you have an application that you want to run whether or not you are logged in, do a Google search for "turn exe into service" and try the tools offered there.
Solution 2:
The application needs to run as a Windows Service. It takes a bit of fiddling to convert an application from standalone to a service but it's definitely doable.
You can also Create Windows service from executable
Solution 3:
As the other answers indicate, the applications you are looking at are services - and you can register an application as a service with sc.exe.
However, it's worth noting that services generally respond to start and stop events from the Service Control Manager (this is what you interact with if you go to Control Panel > Administrative Tools > Services). Unless an application has been coded to respond to those events, you will have issues if you ever need to stop the service.
It's also worth considering what your usage requirements are. Is this something that must be running all the time (for example Logmein will need to accept incoming communications requests at any time) or is it something that's likely to wake up at some specific time of the day, do something, then go back to sleep? If it's the latter, you may want to consider the Task Scheduler. This is a service and it can run scheduled tasks when no users are logged on. You can set up a task to run with a given user's credentials, or as Local System.
This may give you the best solution without the overhead of changing your application to react to the service events.