| Предыдущий | Следующий |
| ERROR_CANNOT_DETECT_PROCESS_ABORT | ERROR_SERVICE_NOT_IN_EXE |
ERROR_NO_RECOVERY_PROGRAM
Для службы не настроена команда восстановления
Действия SCM при сбое могут перезапустить службу, перезагрузить компьютер, выполнить команду или не предпринимать действий. SERVICE_FAILURE_ACTIONS содержит необязательную строку команды, используемую, когда действие имеет тип SC_ACTION_RUN_COMMAND. ERROR_NO_RECOVERY_PROGRAM обозначает путь восстановления, ожидающий программу, для которого команда не настроена.
Запросите SERVICE_CONFIG_FAILURE_ACTIONS и проверьте массив действий вместе с lpCommand. Не считайте исполняемый файл самой службы программой восстановления: восстановление с запуском команды является отдельным полем конфигурации. Если требуемая политика — перезапуск службы, настройте SC_ACTION_RESTART вместо создания вспомогательной команды. Если программа восстановления необходима, сохраните полностью контролируемый путь к исполняемому файлу и проверьте его контекст безопасности, поскольку SCM запускает настроенное действие восстановления при обработке сбоя службы.
Что проверить
- Запросите действия при сбое и найдите все записи SC_ACTION_RUN_COMMAND.
- Убедитесь, что для командных действий настроено поле lpCommand.
- Используйте действия перезапуска напрямую, если внешняя программа восстановления не нужна.
Ссылки
- Microsoft: действия при сбое службы
- Microsoft: SERVICE_FAILURE_ACTIONS
- Microsoft: ChangeServiceConfig2W
Нужно найти другой код? Найти другой код состояния или ошибки.