"Автоматический" и "Автоматический (Задержка запуска)"

При установке служб Windows есть два варианта автоматического запуска службы Windows при запуске Windows. Один - автоматический, а другой - автоматический (с задержкой запуска). В чем разница между этими двумя деталями?

Например, если вы создаете установщик с помощью wixtoolset, элемент ServiceConfig имеет атрибут DelayedAutoStart. Как это повлияет на то, что произойдет, когда службы запущены во время загрузки?

Документация WiX: Элемент ServiceConfig

Ответ 1

Короче говоря, службы, для которых установлено значение "Автоматически", будут запускаться во время процесса загрузки, а службы, для которых установлено значение "Отложено", будут запущены вскоре после загрузки.

Запуск службы Delayed повышает производительность загрузки вашего сервера и имеет преимущества в плане безопасности, которые описаны в статье, на которую Adriano ссылается в комментариях.

Обновление: по умолчанию "вскоре после загрузки" фактически через 2 минуты после запуска последней "автоматической" службы. Это может быть настроено с помощью ключа реестра, в соответствии с Windows Internals и другими источниками (3, 4).

Интересующие ключи реестра (по крайней мере, в некоторых версиях Windows):

  • HKLM\SYSTEM\CurrentControlSet\services\<service name>\DelayedAutostart будет иметь значение 1 если задержано, 0 если нет.
  • HKLM\SYSTEM\CurrentControlSet\services\AutoStartDelay или HKLM\SYSTEM\CurrentControlSet\Control\AutoStartDelay (в Windows 10): десятичное число секунд ожидания, возможно, потребуется создать его. Применяется глобально ко всем отложенным сервисам.