win32_set_service_status

Update the service status

Description

void win32_set_service_status(int $status, int $checkpoint = 0)

Informs the SCM of the current status of a running service. This call is only valid for a running service process.

Caution

Since version 0.2.0, this function work only in "cli" SAPI. On other SAPI this function is disabled.

Parameters

status

The service status code, one of WIN32_SERVICE_RUNNING, WIN32_SERVICE_STOPPED, WIN32_SERVICE_STOP_PENDING, WIN32_SERVICE_START_PENDING, WIN32_SERVICE_CONTINUE_PENDING, WIN32_SERVICE_PAUSE_PENDING, WIN32_SERVICE_PAUSED.

checkpoint

The checkpoint value the service increments periodically to report its progress during a lengthy start, stop, pause, or continue operation. For example, the service should increment this value as it completes each step of its initialization when it is starting up.

The checkpoint is only valid when the status is one of WIN32_SERVICE_STOP_PENDING, WIN32_SERVICE_START_PENDING, WIN32_SERVICE_CONTINUE_PENDING or WIN32_SERVICE_PAUSE_PENDING.

Return Values

No value is returned.

Prior to version 1.0.0, returned WIN32_NO_ERROR on success, false if there is a problem with the parameters or a Win32 Error Code on failure.

Errors/Exceptions

Prior to version 1.0.0, if the SAPI is not "cli", this function emits an E_ERROR level error.

As of version 1.0.0, will throw a Win32ServiceException if SAPI is not "cli"

Changelog

Version Description
PECL win32service 1.0.0 Throws a ValueError on invalid data in parameters, previously false was returned.
PECL win32service 1.0.0 Throws a Win32ServiceException on error, previously a Win32 Error Code was returned.
PECL win32service 1.0.0 The return type is now void, previously it was mixed.
PECL win32service 0.2.0 This function works only in the "cli" SAPI.

See Also