GUI overhaul.
[nssm.git] / README.txt
index 2fbe5c8..f5e6ed8 100644 (file)
@@ -1,5 +1,5 @@
 NSSM: The Non-Sucking Service Manager\r
 NSSM: The Non-Sucking Service Manager\r
-Version 2.17, 2013-11-12\r
+Version 2.18, 2013-11-15\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
 \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
@@ -43,6 +43,12 @@ they can clean up and shut down gracefully on receipt of the event.
 Since version 2.17, NSSM can redirect the managed application's I/O streams\r
 to an arbitrary path.\r
 \r
 Since version 2.17, NSSM can redirect the managed application's I/O streams\r
 to an arbitrary path.\r
 \r
+Since version 2.18, NSSM can be configured to wait a user-specified amount\r
+of time for the application to exit when shutting down.\r
+\r
+Since version 2.19, many more service options can be configured with the\r
+GUI installer as well as via the registry.\r
+\r
 \r
 Usage\r
 -----\r
 \r
 Usage\r
 -----\r
@@ -182,6 +188,20 @@ Take great care when including 8 in the value of AppStopMethodSkip.  If NSSM
 does not call TerminateProcess() it is possible that the application will not\r
 exit when the service stops.\r
 \r
 does not call TerminateProcess() it is possible that the application will not\r
 exit when the service stops.\r
 \r
+By default NSSM will allow processes 1500ms to respond to each of the methods\r
+described above before proceeding to the next one.  The timeout can be\r
+configured on a per-method basis by creating REG_DWORD entries in the\r
+registry under HKLM\SYSTEM\CurrentControlSet\Services\<service>\Parameters.\r
+\r
+  AppStopMethodConsole\r
+  AppStopMethodWindow\r
+  AppStopMethodThreads\r
+\r
+Each value should be set to the number of milliseconds to wait.  Please note\r
+that the timeout applies to each process in the application's process tree,\r
+so the actual time to shutdown may be longer than the sum of all configured\r
+timeouts if the application spawns multiple subprocesses.\r
+\r
 \r
 I/O redirection\r
 ---------------\r
 \r
 I/O redirection\r
 ---------------\r
@@ -282,6 +302,7 @@ Thanks to Riccardo Gusmeroli for Italian translation.
 Thanks to Eric Cheldelin for the inspiration to generate a Control-C event\r
 on shutdown.\r
 Thanks to Brian Baxter for suggesting how to escape quotes from the command prompt.\r
 Thanks to Eric Cheldelin for the inspiration to generate a Control-C event\r
 on shutdown.\r
 Thanks to Brian Baxter for suggesting how to escape quotes from the command prompt.\r
+Thanks to Russ Holmann for suggesting that the shutdown timeout be configurable.\r
 \r
 Licence\r
 -------\r
 \r
 Licence\r
 -------\r