我安装了一些控制台应用程序作为在topshelf下运行的服务,如果我安装并手动运行它们工作正常.但是,即使启动类型设置为“自动”,也不会自动启动.
应用程序配置如下:
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下运行,并使用以Admin身份执行的批处理文件进行安装.批处理文件包括以下内容:
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启动.
有任何想法吗?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。