Windows Service management

To run a batch file or program as a service, you need an intermediate tool.

NSSM - the Non-Sucking Service Manager does all you need for your services. It’s free and open source. There exists a repository on Github with this name, but it is not managed by the author of the app. So, avoid it.

Install a service

nssm.exe install "service-name" , which will open a GUI to configure the service.

Later, you can edit the service by using: nssm.exe edit "service-name" .

To see list of services on a Windows machine, the official tool is services.msc . Nssm is convenient because you can manage any service from the machine.

Configure a service

Select which file you want to run, from where, and optional arguments.

Service restart

Nssm can automatically restarts a finished (or crashed) service. This is the default setting.

I/O redirection

Nssm can log output of your service in a given file. It’s convenient to debug issues.

User credentials

By default, your service runs on local SYSTEM account. If you need administrator access, simply create a user with those rights, and then use this account to run service: