注释
本文不适用于 .NET 中的托管服务。 有关使用 Microsoft.Extensions.Hosting.BackgroundService 和工作服务模板的 Windows 服务的最新内容,请参阅:
- .NET 中的工作服务
使用 创建 Windows 服务
创建服务时,可以使用名为 Windows 服务的 Visual Studio 项目模板。 此模板通过引用适当的类和命名空间、设置服务基础类的继承,以及重写多个你可能需要重写的方法,自动为您完成大部分工作。
警告
Windows Services 项目模板在 Visual Studio 的 Express 版本中不可用。
至少,若要创建功能服务,必须:
设置 ServiceName 属性。
为服务应用程序创建必要的安装程序。
创建 Windows 服务应用程序
创建 Windows 服务 项目。
注释
有关在不使用模板的情况下编写服务的说明,请参阅 如何:以编程方式编写服务。
在 “属性” 窗口中,设置 ServiceName 服务的属性。
注释
属性的值 ServiceName 必须始终与安装程序类中记录的名称匹配。 如果更改此属性,还必须更新 ServiceName 安装程序类的属性。
设置以下任一属性以确定服务将如何运行。
财产 设置 CanStop True指示服务将接受停止运行的请求;false防止服务被停止。CanShutdown 如果指示服务希望在其运行的计算机关机时接收通知,则允许它调用 True过程,通过 OnShutdown 实现。CanPauseAndContinue True指示服务将接受暂停或恢复运行的请求;false以防止服务暂停和恢复。CanHandlePowerEvent True指示服务可以处理计算机电源状态更改的通知;false以防止服务收到这些更改的通知。AutoLog True若要在服务执行操作时将信息性条目写入应用程序事件日志,false禁用此功能。 有关详细信息,请参阅 “如何:记录有关服务的信息”。 注意: 默认情况下, AutoLog 设置为true.注释
当CanStop或CanPauseAndContinue被设置为
false时,服务控制管理器将禁用停止、暂停或继续服务的相应菜单选项。重写要为其定义功能的任何其他方法。
为服务应用程序添加必要的安装程序。 有关详细信息,请参阅 如何将安装程序添加到您的服务应用程序。
通过从“生成”菜单中选择“生成解决方案”来生成项目。
注释
不要按 F5 运行项目 — 你无法以这种方式运行服务项目。
安装服务。 有关详细信息,请参阅 如何:安装和卸载服务。