我用C#开发了一个控制台应用程序来创建HTTP服务器,现在想将其转换成Windows服务以便不需要登录机器即可初始化。我按照How to create Windows Service中的所有步骤,并选择“Local System”作为账户,但当我在服务器上安装并单击启动按钮时,需要等待一段时间后就会出现以下错误:
Error 1053: The service did not respond to the start or control request in timely fashion.
之后,服务状态停留在“starting”状态,应用程序无法工作,我甚至不能停止该服务。
为尝试解决此问题,我将其更改为“Network Service”,这样它就可以正常启动,但是当我在命令提示符下使用“netstat -an”命令检查端口时,应用程序没有监听我设置的端口。但如果我将其作为控制台应用程序运行,则应用程序正常监听。
因此,我正在寻找以下两个问题的答案:
- 我应该怎么做才能确保使用本地系统帐户正确启动服务?
- 如果我决定使用网络服务帐户,我应该注意些什么以确保我的服务作为服务器正常工作?