Try to kill the process tree gracefully.
[nssm.git] / README.txt
index 59b7142..3ef6005 100644 (file)
@@ -1,5 +1,5 @@
 NSSM: The Non-Sucking Service Manager\r
-Version 2.3, 2010-04-21\r
+Version 2.7, 2011-01-25\r
 \r
 NSSM is a service helper program similar to srvany and cygrunsrv.  It can \r
 start any application as an NT service and will restart the service if it \r
@@ -22,6 +22,8 @@ based on the exit code of the managed application.
 \r
 Since version 2.3, NSSM logs to the Windows event log more elegantly.\r
 \r
+Since version 2.5, NSSM respects environment variables in its parameters.\r
+\r
 \r
 Usage\r
 -----\r
@@ -71,7 +73,7 @@ successfully started or you send it a stop signal.
 \r
 NSSM will look in the registry under\r
 HKLM\SYSTEM\CurrentControlSet\Services\<service>\Parameters\AppExit for\r
-string (REG_SZ) values corresponding to the exit code of the application.\r
+string (REG_EXPAND_SZ) values corresponding to the exit code of the application.\r
 If the application exited with code 1, for instance, NSSM will look for a\r
 string value under AppExit called "1" or, if it does not find it, will\r
 fall back to the AppExit (Default) value.  You can find out the exit code\r
@@ -88,10 +90,19 @@ but will continue running itself.  This emulates the (usually undesirable)
 behaviour of srvany.  The Windows Services console would show the service\r
 as still running even though the application has exited.\r
 \r
-If the value data is "Exit" NSSM will exit.  The Windows Services console\r
-would show the service as stopped.  If you wish to provide finer-grained\r
-control over service recovery you should use this code and edit the failure\r
-action manually.\r
+If the value data is "Exit" NSSM will exit gracefully.  The Windows Services\r
+console would show the service as stopped.  If you wish to provide\r
+finer-grained control over service recovery you should use this code and\r
+edit the failure action manually.  Please note that Windows versions prior\r
+to Vista will not consider such an exit to be a failure.  On older versions\r
+of Windows you should use "Suicide" instead.\r
+\r
+If the value data is "Suicide" NSSM will simulate a crash and exit without\r
+informing the service manager.  This option should only be used for\r
+pre-Vista systems where you wish to apply a service recovery action.  Note\r
+that if the monitored application exits with code 0, NSSM will only honour a\r
+request to suicide if you explicitly configure a registry key for exit code 0.\r
+If only the default action is set to Suicide NSSM will instead exit gracefully.\r
 \r
 \r
 Removing services using the GUI\r
@@ -144,8 +155,12 @@ Studio 2008.
 \r
 Credits\r
 -------\r
+Thanks to Bernard Loh for finding a bug with service recovery.\r
 Thanks to Benjamin Mayrargue (www.softlion.com) for adding 64-bit support.\r
 Thanks to Joel Reingold for spotting a command line truncation bug.\r
+Thanks to Arve Knudsen for spotting that child processes of the monitored\r
+application could be left running on service shutdown, and that a missing\r
+registry value for AppDirectory confused NSSM.\r
 \r
 Licence\r
 -------\r