NSSM - the Non-Sucking Service Manager
nssm version 3 has been threatened for a long time. Planned features include:
Actions taken before/after starting or stopping the service, and when it is throttled for restarting too quickly. Actions will include running scripts and calling functions from DLLs.
When taking these actions nssm will pass information - probably via environment variables - about the service, such as how many times it has been restarted.
Feature currently available for testing in pre-release builds.
Running with specific security credentials.