安装后Windows服务无法启动

xor*_*wer 3 .net c# windows-services winforms

我已经构建了一个Windows服务,在C#中每30分钟发送一次电子邮件.服务启动模式设置为自动.但仍然无法自动启动Windows.我需要手动启动,转到Services.msc并右键单击该服务并选择start

don*_*ngg 5

当StartMode设置为自动时,这意味着它将在Windows启动时启动.

您可以在安装程序中的自定义操作中自行启动该服务.我假设您已经有一个Installer类,并且自安装该服务以来它已经是您的安装项目的自定义操作,但是没有启动.

覆盖您拥有的Installer类中的OnAfterInstall方法,您可以像这样启动服务:

protected override void OnAfterInstall(IDictionary savedState) {
    base.OnAfterInstall(savedState);

    ServiceController sc = new ServiceController(“MyServiceName”);
    sc.Start();
}
Run Code Online (Sandbox Code Playgroud)

但是,计划任务并不是一个糟糕的方法.