【问题标题】:The service myService on local computer stared an then stopped automatically本地计算机上的服务 myService 启动然后自动停止
【发布时间】:2011-05-17 08:29:28
【问题描述】:

我确实设置了启动我的 Windows 服务或 NT 服务,就像每个人都说的那样 出现了这条消息:

本地计算机上的服务 myService 启动后停止。如果某些服务没有被其他服务或程序使用,它们会自动停止

我已经启动了其他服务,但它从未发生过...... 在我更改必须在 Web 服务方法上找到它的值的参数值之前 在 sql 数据库上看起来...

还有其他变化是格式化了硬盘...也许我必须启用一些东西 请问我需要帮助

【问题讨论】:

  • 这是您编写的服务(那么我们需要一些代码)还是 Windows 或 3rd 方服务(那么您需要使用 ServerFault 或 SuperUser)?
  • 如果服务是自己写的,OnStart 方法特别有趣。请张贴代码。

标签: c# windows-services


【解决方案1】:

这很可能是因为 您在启动时遇到异常...尝试通过以下方式调试您的东西 使用日志或尝试在 Windows 应用程序中重现您的行为....

您甚至可以使用以下方法调试您的 windows 服务...

在您的服务文件中编写以下代码...

public void OnDebug()
{
    OnStart(null);
}

在程序文件中,

YourService myService = new YourService();
myService.OnDebug();
System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite);

【讨论】:

    【解决方案2】:

    当使用 Windows 服务执行的逻辑超过默认超时时,可能会发生这种情况。

    我们无法克服 Windows 服务的默认超时。通常使用windows服务来实例化一个方法。因此,在 Windows 服务的 OnStart 事件中启动一个子线程并在其中调用您的方法。

    如果这不能解决您的问题,请将代码放入 try catch 并记录异常。如果 OnStart 事件中也有任何异常,则可能会发生此错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-21
      • 2016-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多