Event ID 1061 Service Control Manager: running state control messages
Симптомы ошибки Event ID 1061 (Service Control Manager)
В журнале System фиксируется предупреждение диспетчера служб с кодом Event ID 1061:
The service can accept control messages only when it is in a running state. (Service: ApplicationHostSvc / W3SVC).
Как проявляется неисправность:
- Служба зависает в промежуточном состоянии: «Запуск» (Starting) или «Остановка» (Stopping).
- Попытки остановить, перезапустить или отправить команду службе через оснастку
services.mscзавершаются ошибкой: «Служба не отвечает на управляющие сигналы». - Скрипты автоматического перезапуска сервисов (PowerShell / BAT) завершаются аварийно.
- Зависание веб-сервера IIS, служб резервного копирования или агентов гипервизора.
Что означает ошибка: Диспетчер служб Windows (SCM) попытался отправить службе команду (например, STOP, PAUSE или RESTART), но служба в этот момент находилась в процессе внутренней инициализации (состояние START_PENDING) и была не готова принять управляющий сигнал.
Пошаговое решение проблемы зависания службы
Принудительное завершение зависшего процесса службы по PID
Узнайте идентификатор процесса (PID) зависшей службы и завершите его в командной строке от имени Администратора:
# Определение PID службы (например, службы W3SVC): sc queryex W3SVC # Принудительное снятие процесса по полученному PID (например, 3540): taskkill /F /PID 3540Увеличение времени ожидания ответа служб (ServicesPipeTimeout)
Если тяжелые службы (SQL Server, Exchange, 1С) не успевают инициализироваться за стандартные 30 секунд при загрузке сервера, увеличьте таймаут SCM до 120 секунд:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control" -Name "ServicesPipeTimeout" -Value 120000 -Type DWord -ForceПроверка зависимых служб (Dependencies)
Убедитесь, что службы, от которых зависит работа приложения, запущены и исправны:
# Проверка зависимостей службы: Get-Service -Name W3SVC -RequiredServices Get-Service -Name W3SVC -DependentServicesНастройка отложенного автозапуска (Automatic Delayed Start)
Чтобы избежать одновременной нагрузки на диск и процессор при старте Windows, переведите тяжелые некритичные службы в режим отложенного запуска:
Set-Service -Name "ИмяСлужбы" -StartupType Automatic Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\ИмяСлужбы" -Name "DelayedAutostart" -Value 1 -Type DWord
Частые вопросы (FAQ)
Что такое ServicesPipeTimeout?
Это системный параметр реестра Windows, задающий максимальное время в миллисекундах, в течение которого диспетчер SCM ожидает ответа от запускаемой или останавливаемой службы.
Почему служба зависает в статусе 'Stopping'?
Служба не может корректно освободить занятые дескрипторы файлов, сетевые порты или ожидает завершения дочернего потока, который попал в дедлок (взаимную блокировку).
Опасно ли убивать зависшую службу через taskkill /F?
Это аварийная мера. Для служб баз данных принудительное завершение может потребовать отката незавершенных транзакций при следующем старте, но это единственный способ освободить процесс без перезагрузки всей ОС.
Требуется ли перезагрузка после изменения ServicesPipeTimeout?
Да, диспетчер Service Control Manager считывает параметр ServicesPipeTimeout только во время начальной загрузки ядра Windows.