gpt4 book ai didi

c# - Windows 服务不执行 OnStart()

转载 作者:可可西里 更新时间:2023-11-01 10:27:39 25 4
gpt4 key购买 nike

我在使用一个非常简单的 Windows 服务时遇到了问题。我已经按照 Walkthrough: Creating a Windows Service Application in the Component Designer 中的解释创建了服务.

我有:

  • 应该在 c:\mylogs 中创建一个简单文件的服务
  • 一个服务安装程序(服务进程安装程序作为本地系统运行)
  • 安装服务的安装项目

我可以通过 net start/stop <servicename> 启动和停止服务.但是什么也没有发生,即使我在服务的构造函数中执行操作也是如此。

我以本地管理员身份安装、启动和停止服务。

最佳答案

您的服务初始化代码应该放在 OnStart 事件处理程序中,而不是构造函数中。您的服务清理和关闭代码应该放在 OnStop 事件中。

在启动事件中,您真正应该做的就是启动一个工作线程,只要您的服务处于事件状态,该线程就会运行并进行实际处理。您可以使用 BackgroundWorker 组件来简化此过程。当服务停止时,您进行任何必要的清理,并终止后台线程。

OnStart 和 OnStop 事件处理程序中的代码运行时间不应超过一两秒 - Windows 服务管理器正在等待服务报告它是否已成功启动或停止,如果您的服务没有快速向服务控制管理器提供反馈。

关于c# - Windows 服务不执行 OnStart(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10027306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com