Source: Service Control Manager
Description: The ServiceName service has reported an invalid current state 0.
However, Net.exe determines the current service status by interrogating the service periodically by using the ControlService function with a SERVICE_CONTROL_INTERROGATE control code. This control code is delivered to the control handler for the service. In response, the service posts its current status information back to the SCM by calling SetServiceStatus. The service control handler code should report one of the following valid states, which are defined in the winsvc.h header file:
// Service State -- for CurrentState
#define SERVICE_STOPPED 0x00000001
#define SERVICE_START_PENDING 0x00000002
#define SERVICE_STOP_PENDING 0x00000003
#define SERVICE_RUNNING 0x00000004
#define SERVICE_CONTINUE_PENDING 0x00000005
#define SERVICE_PAUSE_PENDING 0x00000006
#define SERVICE_PAUSED 0x00000007
These same symptoms may occur if any other application interrogates the service to determine its current status.