我有一个将二进制文件读入SQL数据库的服务,此服务在正常运行几天后,突然停掉了。服务重新启动不了,重新启动,在系统应用程序日志里看到消息如下:无法启动服务,服务的范例已在运行中。然后又有一条消息提示如下:服务已成功启动。搞的人都晕了,哪位高人指点下,在线等`!

解决方案 »

  1.   

    两次日志的时间,句柄,及其它情况如何?
    你应该把相关的内容情况贴上来再说.对于windows服务程序来讲,它可以设定启动次数的,如果第一次启动失败会重试第二次的.印像中似乎可以设三次.这个设置位于每个Windows服务属性对话框的第三个选项卡处.
    一般来讲windows服务启动失败的常规问题是:
    1.所引用的服务或组件未启动;这种情况在设置其启动失败的操作为"Restart Service";(估计你的服务故障很可能就是这一个)
    2.服务启动超时;比如你的服务程序需要连接到另外一台服务器如数据库服务器,并且这种操作被设置成你启动服务的过程中;
    3.服务组件被非法移除;这个没得说,只好修复安装或重新安装了.
    4.一般来讲服务是由windows服务管理器来控制其启动的,如果你又设置了手工启动也有可能出问题.比如你的服务使用到了独占设备,独占资源.这个嘛,你应该在实现启动服务的那一块检测是否已经有实例在运行;
    5.有些服务在启动后会自动停止的,这与你的业务有关.