PHP 8.4.1 Released!

win32_query_service_status

(PECL win32service >=0.1.0)

win32_query_service_statusЗапрашивает статус службы

Описание

win32_query_service_status(string $servicename, string $machine = null): array

Функция запрашивает текущий статус службы и возвращает массив информации.

Список параметров

servicename

Краткое название службы.

machine

Необязательное имя машины. Функция работает с локальной машиной, если параметр не установили.

Возвращаемые значения

В случае успешного выполнения функция возвращает массив, который состоит из следующей информации:

До версии 1.0.0 , false, если возникла проблема с параметрами, или код ошибки Win32, если возникла ошибка.

ServiceType

Тип dwServiceType. Смотрите Битовые маски типов службы Win32Service.

CurrentState

Тип dwCurrentState. Смотрите Константы состояния службы Win32Service.

ControlsAccepted

Какие элементы управления службами принимаются службой. Смотрите Битовые маски принятых управляющих сообщений службы Win32Service.

Win32ExitCode

Код возврата из процесса, если служба завершила работу. Это значение равно WIN32_ERROR_SERVICE_SPECIFIC_ERROR, если режим выхода не плавный. Смотрите коды ошибок Win32Service и описание функции win32_set_service_exit_mode().

ServiceSpecificExitCode

Код конкретной службы, который ОС зарегистрировала в журнале событий при завершении работы службы. Это значение равно значению, которое определили функцией win32_set_service_exit_code()

CheckPoint

Текущий номер контрольной точки, если служба завершила работу. Значением пользуется БС SCM как сердцебиением, чтобы обнаружить заклинивание процесса обслуживания. Значение контрольной точки лучше всего интерпретировать вместе со значением WaitHint.

WaitHint

Служба установит для WaitHint значение контрольной точки, которое будет указывать на 100 % завершение, если служба завершила работу. Значением пользуются для реализации индикатора прогресса.

ProcessId

Идентификатор процесса Windows. Для незапущенных процессов значение параметра равняется 0.

ServiceFlags

Тип dwServiceFlags. Смотрите Константы флагов службы Win32Service.

Ошибки

Функция выбрасывает исключение ValueError, если значение параметра servicename не указали.

Список изменений

Версия Описание
PECL win32service 1.0.0 Функция выбрасывает исключение ValueError при недопустимых данных в параметрах, раньше возвращалось false.
PECL win32service 1.0.0 Функция выбрасывает исключение Win32ServiceException, если возникла ошибка, раньше возвращался Код ошибки Win32.
PECL win32service 1.0.0 Тип возврата теперь array, раньше был mixed.

Добавить

Примечания пользователей 1 note

up
1
demers dot alex at gmail dot com
15 years ago
This function will return an array containing the above information as a return value, but if this fails it will return an integer which is a System Error Code. All the System Error Codes can be found here:

http://msdn.microsoft.com/en-us/library/ms681381%28VS.85%29.aspx

In my case, it returned 5, in which I immediately knew why and fixed the issue right away.

In the case of mnemotronic at netscape dot net, here in the documentation notes, it returned 1060 which is:

ERROR_SERVICE_DOES_NOT_EXIST
1060 (0x424)
The specified service does not exist as an installed service.

Again, it should not return FALSE, instead an System Error Code for Windows.
To Top