Service dependencies can now be queried or set on the command line via
the DependOnService and DependOnGroup parameters, or via the GUI in the
new Dependencies tab.
Service dependencies can be set using either their key name or display
name. For example:
nssm set <servicename> DependOnService RpcSs
which is equivalent to:
nssm set <servicename> DependOnService "Remote Procedure Call (RPC)"
Group dependencies can be set with or without the group identifier
prefix, which for some reason is not actually described in the
documentation; instead readers are invited to consult the header files
for the value of SC_GROUP_IDENTIFIER, which it turns out is the +
symbol. For example:
nssm set <servicename> DependOnGroup +UIGroup
which is equivalent to:
nssm set <servicename> DependOnGroup UIGroup
The prefix is always printed when query group dependencies.
The GUI presents a editbox into which either service or group
dependencies can be typed. The group prefix is mandatory when editing
dependencies via the GUI.
Since we can now open a service by its display name it may be
interesting to know what its canonical name is.
Find out with:
nssm get <displayname> Name
Individual service parameters can now be queried or edited on the
command line. The syntax is designed to be intuitive and is
described in some detail in the README. Some examples follow:
nssm get Selenium Application
nssm get "My Batch Job" AppExit 0
nssm get Jenkins AppEnvironmentExtra CLASSPATH
nssm get Netlogon ImagePath
nssm set UT2004 Application C:\Games\UT2004\System\UCC.exe
nssm set UT2004 AppParameters server
nssm set UT2004 AppExit Default Exit
nssm set Jenkins ObjectName DOMAIN\ci correct horse battery staple
nssm set "My Batch Job" AppExit 0 Exit
nssm set WowzaMediaServer362 Start SERVICE_DELAYED_START
nssm set UT2004 Type SERVICE_INTERACTIVE_PROCESS
nssm reset UT2004 AppEnvironment
nssm reset UT2004 ObjectName