ID: Q133756
3.51 4.00 WINDOWS NT kbprg kbdocerr
The information in this article applies to:
- Microsoft Windows NT versions 3.51 and 4.00
In the Win32 API Help file, it mentions that you cannot call the StartService API from within a service. This statement is not totally correct. It should say that you cannot call the StartService API from within a service while it is initializing.
An initializing service is a service which has not yet reported to the Service Control Manager a status of SERVICE_RUNNING. Once the service is running, you can use the StartService API within the service.
If your service is initializing due to a dependency or the auto start flag, If your service is initializing due to a dependency or the SERVICE_AUTO_START flag, and your service attempts to start another service, a deadlock state in the Service Control Manager may occur. The reason this occurs is because the call to StartService API blocks because the Service Control Manager has a lock on the service control database from the original initializing service.
KBCategory: kbprg kbdocerr KBSubcategory: BseService Additional reference words: 3.51 4.00
Keywords : kbKernBase kbService kbGrpKernBase
Version : 3.51 4.00
Platform : NT WINDOWS
Last Reviewed: December 18, 1996