OnStart()未被调用.服务进程无法连接到服务控制器.手动工作,并在其他机器上工作

dar*_*ckc 2 c# windows-services

我有一个作为服务运行的ac#应用程序并自动启动.如果手动启动此服务,该服务就会正常启动,但在某个特定Windows Server 2008 R2上的事件查看器中,此错误(服务进程无法连接到服务控制器)失败.我在第二台Windows Server 2008 R2 VM上试用了它,它自动启动很好.具体是什么导致了这个错误

这个服务没有依赖关系,没有正确的权限,只是读取一个小的配置文件,并启动一个线程所以它不会花费超过30秒,因为这篇文章暗示http://social.msdn.microsoft.com/论坛/ EN-US/dc177c75-b41b-4ff7-ae67-9ad60919e507 /我-窗口服务是-不启动-当-的系统靴式偶数虽然-IT-是集-TO-自动?论坛= netfxbcl.

我有一个调试语句作为OnStart()的第一行,它永远不会输出到日志文件(我使用的是Log4Net).我调用ServiceBase.Run()之前在Main()中有一个日志语句,它输出到我的日志文件,所以我知道日志记录正在运行.

dar*_*ckc 7

我在这里随机偶然发现了这个解决方案:为什么我不能安装我的服务(运行时比加载的运行时更新)?

这解决了我的问题:

这就是我必须做的事情:

在Visual Studio中右键单击服务项目,
转到"属性"
将"启动对象" 设置为服务名称(它已设置为>值"(未设置)").
保存.
构建尝试再次安装.

有用!好极了!我们都可以回家了!