Я использую Windows Server 2008 R2. Когда сервер перезагружается и только в это время, мне нужно убедиться, что запускается служба A, затем служба B, а затем служба C.
Я исследовал зависимости, но, насколько я понимаю, настройка службы B, чтобы она зависела от службы A, а служба C зависела от службы B, означает, что если A необходимо остановить, то B и C также будут остановлены. Я не хочу, чтобы это случилось. Я хочу, чтобы службы зависели друг от друга только при запуске, но чтобы они могли останавливать их независимо друг от друга.
Я также посмотрел на настройку расписания задач для остановки / запуска служб, но время перезагрузки не всегда запланировано, поэтому это тоже не подходит.
Возможно ли, чтобы службы зависели от других служб, только когда они запускаются?
Это невозможно; если ServiceA зависит от ServiceB, перезапуск ServiceB гарантированный для принудительного перезапуска ServiceA. Однако зависимости службы можно изменить программно; взглянуть на sc команда, особенно sc config depend=
часть.
Другой жизнеспособный вариант - установить ваши службы в ручной режим, а затем использовать сценарий запуска (или запланированную задачу, настроенную для запуска во время загрузки), чтобы запускать их в требуемом порядке; это все равно обеспечит правильный порядок запуска, но без явных зависимостей.