У меня есть .exe в GO, который работает как служба Windows с привилегией учетной записи "Local System", но когда я перезагружаю систему, она не запускается. Если я изменю функцию "LogOnAs" службы на любую учетную запись администратора, служба также запускается при перезагрузке. Есть ли способ узнать, почему это происходит.

Ошибка, которую служба выдает за то, что она не запускается: «Ошибка 1053:" Служба не ответила своевременно "при попытке запустить, остановить или приостановить службу».

Я даже попытался взглянуть на "монитор процесса" в sysinternals, это не дает сбой или значительный результат.

1 ответ1

0

Причиной Error 1053 может быть ошибка запуска службы Windows или, возможно, поврежденные системные файлы.

Признаки ошибки при запуске службы Windows

Когда вы останавливаете или приостанавливаете управляемую службу Microsoft Windows, и процесс остановки или приостановки службы занимает больше времени, чем настроенное по умолчанию время, вы получаете следующее сообщение об ошибке:

Could not stop the Windows service name service on Local Computer.
Error 1053: The service did not respond to the start or control request in a timely fashion.

Примечание . Имя службы Windows является заполнителем для имени службы Windows, которую вы создали.

причина

Класс ServiceBase называет OnStop метод непосредственно из командной обработчика Service , который определен в ScDispatcherLoop файла Advapi32.dll Через 30 секунд, если поток ScDispatcherLoop не готов принять новую команду службы от диспетчера управления службами, Windows Service Controller помечает службу как time out. Поэтому вы получаете это сообщение об ошибке.

Решение

Чтобы решить эту проблему, получите последний пакет обновления для Microsoft .NET Framework 1.1.

Следуйте инструкциям, чтобы завершить установку. После установки обновленного service pack обновления вы больше не увидите сообщение об Error 1053 при попытке запустить, остановить или приостановить службу Windows.

Запустите проверку проверки системных файлов, чтобы исправить любые поврежденные системные файлы

Вы можете запустить сканирование System File Checker (SFC), чтобы исправить любые поврежденные системные файлы.

Для этого выполните следующие действия:

  • Нажмите Пуск, Все программы, а затем Аксессуары. Нажмите Командная строка (Ensure you run as administrator) .

Проверка системных файлов дает администратору возможность сканировать все защищенные файлы для проверки их версий. Если средство проверки системных файлов обнаруживает, что защищенный файл был перезаписан, он получает правильную версию файла из папки кэша (%Systemroot%\System32\Dllcache) или исходных файлов установки Windows, а затем заменяет неправильный файл. Проверка системных файлов также проверяет и заново заполняет папку кэша. Вы должны войти в систему как администратор или как член группы администраторов, чтобы запустить проверку системных файлов. Если папка кеша становится поврежденной или непригодной для использования, вы можете использовать команды sfc /scannow , sfc /scanonce или sfc /scanboot для восстановления ее содержимого.

Синтаксис средства проверки системных файлов

Sfc [/Scannow] [/Scanonce] [/Scanboot] [/Revert] [/Purgecache] [/Cachesize = x]


/Scannow: Scans all protected system files immediately and replaces incorrect versions with correct Microsoft versions. This command may require access to the Windows installation source files.

/Scanonce: Scans all protected system files one time when you restart your computer. This command may require access to the Windows installation source files when you restart the computer. The **SfcScan DWORD** value is set to 2 in the following registry key when you run this command:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

/Scanboot: Scans all protected system files every time you start your computer. This command may require access to the Windows installation source files every time you start your computer. The SfcScan DWORD value is set to 1 in the following registry key when you run this command:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

/Revert: Returns scan to the default setting (do not scan protected files when you start the computer). The default cache size is not reset when you run this command. This command is equivalent to the /Enable switch in Windows 2000.

/Purgecache: Purges the file cache and scans all protected system files immediately. This command may require access to the Windows installation source files.

/Cachesize=x: Sets the file cache size to xmegabytes (MB). The default size of the cache is 50 MB. This command requires you to restart the computer, and then run the /purgecache command to adjust the size of the on-disk cache. This command sets the SfcQuota DWORD value to x in the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

После завершения сканирования закройте окно command prompt , restart компьютер и проверьте наличие проблемы.

Ресурсы: Ошибка 1053, Fix, SFC

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .