QueryServiceStatus  UZ9Z4 

The QueryServiceStatus function retrieves the current status of the specified service.

BOOL QueryServiceStatus(

    SC_HANDLE hService,

// handle of service

    LPSERVICE_STATUS lpServiceStatus

// address of service status structure 

   );

 

 

Parameters

hService

Identifies the service. This handle is returned by the OpenService20GSKY6 or the CreateService2WNG26 function, and it must have SERVICE_QUERY_STATUS access.

lpServiceStatus

Points to a SERVICE_STATUS25UOEU structure in which the status information is returned.

 

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError11C2VS7.

Errors

The following error codes may be set by the service control manager. Other error codes may be set by the registry functions that are called by the service control manager.

Value

Meaning

ERROR_ACCESS_DENIED

The specified handle was not opened with SERVICE_QUERY_STATUS access.

ERROR_INVALID_HANDLE

The specified handle is invalid.

 

Remarks

The QueryServiceStatus function returns the most recent service status information reported to the service control manager. The service may have just changed its status and may not have updated the service control manager yet. Applications can find out the absolutely latest service status by interrogating the service directly by using the ControlService2NU_3F function with the SERVICE_CONTROL_INTERROGATE control code.

See Also

ControlService, CreateService, OpenService, SERVICE_STATUS, SetServiceStatus