Windows服务总是“开始”

时间:2010-11-30 04:25:11

标签: c# windows-services

我有一个应用程序,我已经测试过它作为控制台应用程序。 我现在已将其转换为Windows服务,安装它,运行它,它仍然可以正常工作。

但是,它的状态始终为Starting。似乎没有任何逻辑标志可以在ServiceBase上设置。

我使用bool isRunning标志设置了服务,程序在a中运行 while (isRunning) {}阻止。

2 个答案:

答案 0 :(得分:9)

您是否阻止OnStart的回复?

通常会从那里生成一个线程来完成工作,让方法返回。

答案 1 :(得分:0)

听起来好像你没有在启动阶段交出跑步。

  static void Main()
  {
     ServiceBase[] ServicesToRun;
     ServicesToRun = new ServiceBase[] { new myservice() };
     AppDomain currentDomain = AppDomain.CurrentDomain;
     currentDomain.UnhandledException += UnknownExceptionHandler;
     Run(ServicesToRun);
  }