Details
-
Bug
-
Status: Closed
-
Major - P3
-
Resolution: Fixed
-
3.0.5
-
None
-
Fully Compatible
-
Windows
-
Platform 8 08/28/15
Description
In Windows Vista, Microsoft changed the definition of SERVICE_CONTROL_SHUTDOWN such that there is a global OS timeout so that machines shutdown faster. In this case, the OS automatically terminates services that exceed the global timeout (typically 3 or 12 seconds). The services cannot veto this.
For data sensitive applications like databases, the correct event to register for is SERVICE_CONTROL_PRESHUTDOWN which allows applications to ask for longer timeouts via ChangeServiceConfig2 during installation, and forces Windows to wait for the service to stop or timeout. The default is 5 minutes.