У меня есть несколько консольных приложений, установленных как службы, запущенные под верхней панелью, и если я устанавливаю и запускаю вручную, они работают нормально. Однако ни один из них не запускается автоматически, даже если для типа запуска установлено значение «Автоматически».Автоматические службы не запускаются
Приложения настроены следующим образом:
HostFactory.Run(x =>
{
x.Service<MyApp>(s =>
{
s.ConstructUsing(name => container.Resolve<MyApp>());
s.WhenStarted(tc => tc.Start());
s.WhenStopped(tc =>
{
tc.Stop();
container.Dispose();
});
});
x.RunAsLocalSystem();
x.StartAutomatically();
x.EnableServiceRecovery(rc => rc.RestartService(5));
});
Приложения работают под Win 2008 R2 и они устанавливаются с помощью пакетного файла выполняется в качестве администратора. Пакетный файл включает в себя следующее:
app.exe install --sudo
app.exe start
После выполнения командного файла службы выполняются, как ожидалось. Однако, если я перезагружаюсь, они остаются остановленными.
Журнал событий возвращает ту же пару событий для каждой службы:
Event 7000: The service failed to start due to the following error: The service did not respond to the start or control request in a timely fashion.
Event 7009: A timeout was reached (30000 milliseconds) while waiting for the service to connect.
Единственный способ для запуска приложения после перезагрузки запустить app.exe start
из командной строки с повышенными.
Любые идеи?
Ты только что спас мне 100 лет копания в мусоре информации :) – alerya