| Предыдущий | Следующий |
| ERROR_NOTIFY_ENUM_DIR | ERROR_INVALID_SERVICE_CONTROL |
ERROR_DEPENDENT_SERVICES_RUNNING
Работающие зависимые службы препятствуют запрошенной остановке
Зависимости служб влияют и на порядок запуска, и на операции остановки. Диспетчер управления службами может перечислить службы, зависящие от целевой. ERROR_DEPENDENT_SERVICES_RUNNING означает, что запрос остановки поступил службе, у которой всё ещё есть работающие зависимые службы, поэтому её остановка нарушила бы цепочку зависимостей.
Перечислите активные зависимые службы и остановите их в порядке зависимостей, прежде чем повторять остановку цели. Не путайте зависимые службы со службами, от которых зависит сама цель: направление имеет значение. Автоматизация также должна учитывать переходные состояния, а не считать службу остановленной сразу после успешного запроса. Запрашивайте состояние каждой зависимой службы и ожидайте завершения STOP_PENDING. Если в цепочке неожиданно появилась служба, проверьте её настроенные зависимости в базе SCM, а не принудительно завершайте общий процесс.
Что проверить
- Используйте EnumDependentServices для поиска активных служб, зависящих от целевой.
- Сначала останавливайте конечные зависимые службы и ожидайте завершения переходных состояний.
- Проверьте настроенные имена зависимостей, если цепочка отличается от ожидаемой при развёртывании.
Ссылки
- Microsoft: EnumDependentServicesW
- Microsoft: ControlService
- Microsoft: база данных установленных служб
Нужно найти другой код? Найти другой код состояния или ошибки.