Service Control Handler May Not Receive SERVICE_CONTROL_SHUTDOWN Notification

This article has been archived. It is offered "as is" and will no longer be updated.
Symptoms
The service control handler function and the console control handler function registered by a service may not receive SERVICE_CONTROL_SHUTDOWN or CTRL_SHUTDOWN_EVENT notifications.
Cause
This behavior can occur if a user is not logged on locally to the computer and the computer is shut down programmatically (by a program).
Resolution

Windows 2000

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
260910 How to Obtain the Latest Windows 2000 Service Pack

Windows NT Server or Workstation 4.0

To resolve this problem, obtain the latest service pack for Windows NT 4.0 or the individual software update. For information on obtaining the latest service pack, please go to:
  • 152734 how to obtain the latest windows nt 4.0 service pack
For information on obtaining the individual software update, contact Microsoft Product Support Services. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:

Terminal Server Edition

To resolve this problem, obtain the latest service pack for Windows NT Server 4.0, Terminal Server Edition. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
152734 How to Obtain the Latest Windows NT 4.0 Service Pack
Status

Windows 2000

Microsoft has confirmed that this is a problem in Windows 2000. This problem was first corrected in Windows 2000 Service Pack 1.

Windows NT 4.0

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows NT 4.0 Service Pack 6 and Windows NT Server 4.0, Terminal Server Edition, Service Pack 5.
More information
A program that runs as a service can call RegisterServiceCtrlHandler to register a service control handler function for handling its service control requests, and can register a console control handler using SetConsoleCtrlHandler for receiving control events. If the computer is shut down programmatically by using ExitWindowsEx or InitiateSystemShutdown, the service control handler should receive a SERVICE_CONTROL_SHUTDOWN notification and the console control handler should receive a CTRL_LOGOFF_EVENT notification followed by a CTRL_SHUTDOWN_EVENT notification.

If the computer is shut down manually by the user at the console or programmatically when a user is logged on to the computer locally, the service control handler receives a SERVICE_CONTROL_SHUTDOWN notification and the console control handler receives a CTRL_LOGOFF_EVENT notification followed by a CTRL_SHUTDOWN_EVENT notification as expected.
event 6008 shutdown.exe
Properties

Article ID: 230449 - Last Review: 01/11/2015 02:50:45 - Revision: 5.0

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • kbnosurvey kbarchive kbqfe kbhotfixserver kbbug kbfix kbkernbase kbservice kbwin2000sp1fix KB230449
Feedback