我有一个基本的 C# 控制台应用程序,我想将其作为 Windows 服务运行。
我已经使用创建了 Windows 服务sc create
。这工作正常,我可以在下面看到我的服务services.msc
。当我尝试启动此服务时,出现以下错误:
无法在本地计算机上启动 PROJECT 服务。错误1053:服务没有及时响应启动或控制请求。
我了解到这可能是由于服务代码的执行时间超过 30000 毫秒。因此,我删除了大部分代码,以便几乎没有执行任何内容......但同样的错误仍然存在。
我在这个项目中使用 .NET 3.5。
什么会导致这种情况呢?
您不能只使用任何控制台应用程序并作为 Windows 服务运行。首先,您需要实现继承自的服务类ServiceBase
,然后在入口点 (Main
)你需要运行该服务ServiceBase.Run(new YourService())
。在您的服务类中,您需要定义服务开始和结束时会发生什么。
理想情况下,您也应该将 ServiceInstaller 添加到您的程序集中。这样您就可以预设服务属性,并使用 installutil.exe 安装服务。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)