win32service
PHP Manual

Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

Win32Service Service Type Bitmasks
Constant Value Description
WIN32_SERVICE_WIN32_OWN_PROCESS 0x00000010 The service that runs in its own process.
WIN32_SERVICE_INTERACTIVE_PROCESS 0x00000100 The service can interact with the desktop. This option is not available on Windows Vista or later.
Win32Service Service Status Constants
Constant Value Description
WIN32_SERVICE_CONTINUE_PENDING 0x00000005 The service continue is pending.
WIN32_SERVICE_PAUSE_PENDING 0x00000006 The service pause is pending.
WIN32_SERVICE_PAUSED 0x00000007 The service is paused.
WIN32_SERVICE_RUNNING 0x00000004 The service is running.
WIN32_SERVICE_START_PENDING 0x00000002 The service is starting.
WIN32_SERVICE_STOP_PENDING 0x00000003 The service is stopping.
WIN32_SERVICE_STOPPED 0x00000001 The service is not running.
Win32Service Service Control Message Constants
Constant Value Description
WIN32_SERVICE_CONTROL_CONTINUE 0x00000003 Notifies a paused service that it should resume.
WIN32_SERVICE_CONTROL_INTERROGATE 0x00000004 Notifies a service that it should report its current status information to the service control manager.
WIN32_SERVICE_CONTROL_PAUSE 0x00000002 Notifies a service that it should pause.
WIN32_SERVICE_CONTROL_PRESHUTDOWN 0x0000000F Notifies a service that the system will be shutting down. A service that handles this notification blocks system shutdown until the service stops or the preshutdown time-out interval expires. This value is not supported by Windows Server 2003 and Windows XP/2000.
WIN32_SERVICE_CONTROL_SHUTDOWN 0x00000005 Notifies a service that the system is shutting down so the service can perform cleanup tasks. If a service accepts this control code, it must stop after it performs its cleanup tasks. After the SCM sends this control code, it will not send other control codes to the service.
WIN32_SERVICE_CONTROL_STOP 0x00000001 Notifies a service that it should stop.
Win32Service Service Control Message Accepted Bitmasks
Constant Value Description
WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE 0x00000002 The service can be paused and continued. This control code allows the service to receive WIN32_SERVICE_CONTROL_PAUSE and WIN32_SERVICE_CONTROL_CONTINUE notifications.
WIN32_SERVICE_ACCEPT_PRESHUTDOWN 0x00000100 The service can perform preshutdown tasks. This control code enables the service to receive WIN32_SERVICE_CONTROL_PRESHUTDOWN notifications. This value is not supported by Windows Server 2003 and Windows XP/2000.
WIN32_SERVICE_ACCEPT_SHUTDOWN 0x00000004 The service is notified when system shutdown occurs. This control code allows the service to receive WIN32_SERVICE_CONTROL_SHUTDOWN notifications.
WIN32_SERVICE_ACCEPT_STOP 0x00000001 The service can be stopped. This control code allows the service to receive WIN32_SERVICE_CONTROL_STOP notifications.
Win32Service Service Start Type Constants
Constant Value Description
WIN32_SERVICE_AUTO_START 0x00000002 A service started automatically by the service control manager during system startup.
WIN32_SERVICE_DEMAND_START 0x00000003 A service started by the service control manager when a process calls the StartService function.
WIN32_SERVICE_DISABLED 0x00000004 A service that cannot be started. Attempts to start the service result in the error code WIN32_ERROR_SERVICE_DISABLED.
Win32Service Service Error Control Constants
Constant Value Description
WIN32_SERVICE_ERROR_IGNORE 0x00000000 The startup program ignores the error and continues the startup operation.
WIN32_SERVICE_ERROR_NORMAL 0x00000001 The startup program logs the error in the event log but continues the startup operation.
Win32Service Service Service Flag Constants
Constant Value Description
WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS 0x00000001 The service runs in a system process that must always be running.
Win32 Error Codes
Constant Value Description
WIN32_ERROR_ACCESS_DENIED 0x00000005 The handle to the SCM database does not have the appropriate access rights.
WIN32_ERROR_CIRCULAR_DEPENDENCY 0x00000423 A circular service dependency was specified.
WIN32_ERROR_DATABASE_DOES_NOT_EXIST 0x00000429 The specified database does not exist.
WIN32_ERROR_DEPENDENT_SERVICES_RUNNING 0x0000041B The service cannot be stopped because other running services are dependent on it.
WIN32_ERROR_DUPLICATE_SERVICE_NAME 0x00000436 The display name already exists in the service control manager database either as a service name or as another display name.
WIN32_ERROR_FAILED_SERVICE_CONTROLLER_CONNECT 0x00000427 This error is returned if the program is being run as a console application rather than as a service. If the program will be run as a console application for debugging purposes, structure it such that service-specific code is not called.
WIN32_ERROR_INSUFFICIENT_BUFFER 0x0000007A The buffer is too small for the service status structure. Nothing was written to the structure.
WIN32_ERROR_INVALID_DATA 0x0000000D The specified service status structure is invalid.
WIN32_ERROR_INVALID_HANDLE 0x00000006 The handle to the specified service control manager database is invalid.
WIN32_ERROR_INVALID_LEVEL 0x0000007C The InfoLevel parameter contains an unsupported value.
WIN32_ERROR_INVALID_NAME 0x0000007B The specified service name is invalid.
WIN32_ERROR_INVALID_PARAMETER 0x00000057 A parameter that was specified is invalid.
WIN32_ERROR_INVALID_SERVICE_ACCOUNT 0x00000421 The user account name specified in the user parameter does not exist. See win32_create_service().
WIN32_ERROR_INVALID_SERVICE_CONTROL 0x0000041C The requested control code is not valid, or it is unacceptable to the service.
WIN32_ERROR_PATH_NOT_FOUND 0x00000003 The service binary file could not be found.
WIN32_ERROR_SERVICE_ALREADY_RUNNING 0x00000420 An instance of the service is already running.
WIN32_ERROR_SERVICE_CANNOT_ACCEPT_CTRL 0x00000425 The requested control code cannot be sent to the service because the state of the service is WIN32_SERVICE_STOPPED, WIN32_SERVICE_START_PENDING, or WIN32_SERVICE_STOP_PENDING.
WIN32_ERROR_SERVICE_DATABASE_LOCKED 0x0000041F The database is locked.
WIN32_ERROR_SERVICE_DEPENDENCY_DELETED 0x00000433 The service depends on a service that does not exist or has been marked for deletion.
WIN32_ERROR_SERVICE_DEPENDENCY_FAIL 0x0000042C The service depends on another service that has failed to start.
WIN32_ERROR_SERVICE_DISABLED 0x00000422 The service has been disabled.
WIN32_ERROR_SERVICE_DOES_NOT_EXIST 0x00000424 The specified service does not exist as an installed service.
WIN32_ERROR_SERVICE_EXISTS 0x00000431 The specified service already exists in this database.
WIN32_ERROR_SERVICE_LOGON_FAILED 0x0000042D The service did not start due to a logon failure. This error occurs if the service is configured to run under an account that does not have the "Log on as a service" right.
WIN32_ERROR_SERVICE_MARKED_FOR_DELETE 0x00000430 The specified service has already been marked for deletion.
WIN32_ERROR_SERVICE_NO_THREAD 0x0000041E A thread could not be created for the service.
WIN32_ERROR_SERVICE_NOT_ACTIVE 0x00000426 The service has not been started.
WIN32_ERROR_SERVICE_REQUEST_TIMEOUT 0x0000041D The process for the service was started, but it did not call StartServiceCtrlDispatcher, or the thread that called StartServiceCtrlDispatcher may be blocked in a control handler function.
WIN32_ERROR_SHUTDOWN_IN_PROGRESS 0x0000045B The system is shutting down; this function cannot be called.
WIN32_NO_ERROR 0x00000000 No error.

win32service
PHP Manual