C# windows 服务设置为’自动启动‘,但是在电脑启动的时候却没有启动,而手动是可以启动的,而且一切正常运行。
但是但是,最奇怪的是当我再安装了一个用c# windows服务后(该服务没有做任何功能,也就是一个空的服务。),原先那个不能在开机时自动启动的服务却自动启动了,而新第二个空服务却没有启动(该服务也设成了开机是自动启动)。把我搞得是云里雾里的????。注:我用的SERVER 2003,第一个服务里的功能操作如下:访问一个WEB SERVICE,和往事件查看器里加事件。

解决方案 »

  1.   

    查过,没有启动,但是会出现超时错误,可是我在ONSTART()方法里没有做什么事情啊,
      

  2.   

    记得有一个树形可以设置,查一下MSDN吧!
      

  3.   

    如果你的服务(Service)是depend on 其他的windows service的话, 你需要在建立你的service的时候把你的Dependencies加上去。
      

  4.   

    可能的原因是在系统从新启动后,到你写的Windows服务运行起来的时候,一些外在的初始化条件没有具备,导致启动失败。
    在服务的最外层使用Try...Catch,写错误日志到EventLog,然后查找原因。
      

  5.   

    7楼说的情况我也是试过的,没有起作用,而且最重要的是这个服务在有些机子上是可以正常自动启动的,我怀疑是所在的系统也有关系,想请教一下大家一下,设置了什么会对服务有所影响的呢??
    9楼的方法我也去式了一下,出现的错误还是说我超时,但是我发现她是根本是没有执行过Onstart()过,怎么会出现启动超时呢?
      

  6.   

    少了一部分东西,具体你可以看看windows自带服务的注册表值,c#写的服务注册后,注册表值会少一部分键值
      

  7.   

    11楼说道注册表,我不知道那里可以改的,请指教,
    12楼说的我已经考虑到了,,我在启动OnStart()的时候就做了两件事,启动一个timer和往事件查看器里写入内容,肯定不会超时的。
      

  8.   

    debug 吧,一步一步设断点
    另,超时的原因,会不会是调用网络不通,或者调用数据库没有连接上?
      

  9.   

    但是我的服务手动启动也不执行OnStart()里面的方法是怎么回事啊?
    急求!