【发布时间】:2015-09-23 18:58:41
【问题描述】:
我在 C# 中通过控制台应用程序开发了一个 http 服务器,并决定将其转换为 Windows 服务,以便能够在无需登录机器的情况下对其进行初始化。
我按照How to create Windows Service 中的所有步骤操作并选择帐户为“本地系统”,但是当我安装在我的服务器机器上并按下开始按钮时,它需要一段时间并给出以下错误:
错误 1053:服务未及时响应启动或控制请求。
之后,服务状态一直停留在“正在启动”,应用程序无法运行,我什至无法停止服务。
为了解决这个问题,我将其更改为“网络服务”,所以它可以正常启动,但是当我使用命令“netstat -an”检查提示时,应用程序没有监听我设置的端口。但是如果我将它作为控制台应用程序运行,应用程序会正常侦听。
所以我正在寻找以下两个问题之一的答案:
- 我应该怎么做才能使用本地系统帐户正确启动服务?
- 如果我决定使用网络服务帐户,我应该注意什么来保证我的服务作为服务器正常工作?
【问题讨论】:
-
OnStart 应在 30 秒内完成。参考这个:stackoverflow.com/questions/2631364/c-sharp-windows-service
标签: c# windows-services