永久“开始”状态的服务

时间:2009-07-08 00:11:29

标签: c# .net windows-services

我在C#中编写了一个Windows服务,它将wav文件转换为mp3,然后将它们存储在远程服务器上。在我的开发平台(操作系统:WinXP SP3)上,服务启动正常,并按照预期的方式运行。

当我安装生产机器(OS:WinServer 2000)时,在启动服务时它无法及时启动,并保持恒定的“正在启动”状态。该程序显然正在运行,因为文件正在转换和传输。

我的预感是问题在于计时器组件,我认为在Windows 2000 Server计算机上,计时器可能导致系统将程序注册为“正在启动”。

我有没有关于Windows Server 2000的东西?

1 个答案:

答案 0 :(得分:3)

我不熟悉在.NET中编写服务,但一般来说,用于启动服务并报告其初始状态的线程不应该与执行实际工作的线程相同。该服务应该生成一个工作线程,以便入口点可以快速将状态返回给SCM。