c# - 永久服务 "Starting"状态

标签 c# .net windows-services

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

当我将其安装到生产机器(操作系统:WinServer 2000)时,启动服务时它无法及时启动,并且始终处于“正在启动”状态。由于文件正在转换和传输,因此该程序显然正在运行。

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

关于 Windows Server 2000,我是否遗漏了什么?

最佳答案

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

关于c# - 永久服务 "Starting"状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1095498/

相关文章:

c# - 如何使用循环访问 C# 中的表单元素?

c# - 如何在 Windows 和 IANA 时区之间进行转换?

c# - 用 C# 启动 Windows 服务

c# - 如何根据数据库优先方法(.edmx)的父删除自动删除子?

javascript - 如何在标签中显示对象变量值

c# - 如何使用 Entity Framework 插入 ntext?

c# - 使用 ServiceAccount.User 安装 Windows 服务以在用户凭据下运行但不提示

c# - 如何在网络上制作程序 "discoverable"?

c# - 最小化具有自动调整列宽的 ListView 后出现水平滚动条

c# - 用于处理 Windows 消息队列的多线程 Windows 服务