笔记本电脑睡眠后,Windows服

时间:2016-03-03 09:32:37

标签: c# .net timer windows-services

我在使用Windows服务时遇到过问题; 该服务每5秒检查一次更改。 如果我开始服务,一切都很好,但是在我将笔记本电脑置于睡眠模式之后,并且“唤醒”#39;再一次,它永远不会发生任何事件。

所有服务逻辑都在DLL内部进行调试,这可能是错误吗?

1 个答案:

答案 0 :(得分:0)

在ProjectInstaller.cs设计器视图中,将StartType设置为自动。之后在同一个类中,但在代码视图中添加这段代码,这将允许服务在安装后自动启动。

[RunInstaller(true)]
public partial class ProjectInstaller : System.Configuration.Install.Installer
{
    public ProjectInstaller()
    {
        InitializeComponent();
        this.AfterInstall += new InstallEventHandler(ServiceInstaller_AfterInstall);
    }
    void ServiceInstaller_AfterInstall(object sender, InstallEventArgs e)
    {
        using (ServiceController sc = new ServiceController(Program.ServiceName))
        {
           sc.Start();
        }
    }
}

Program.ServiceName更改为您声明ServiceName的位置,在我的情况下是在Program类中。