使用.net6.0做Windows的服务

发布时间 2023-05-27 17:02:38作者: 谁主沉浮1226

在VS2022上新建项目:选择C#,windows,服务,最后选择worker service。

刚创建项目的时候只有一个类包,还需要应用另一个类包Microsoft.Extensions.Hosting.WindowsServices。

Main函数是这样的:

public static void Main(string[] args)
{
  IHost host = Host.CreateDefaultBuilder(args)
  .UseWindowsService(options =>
  {
    //服务进行命名,会显示在Windows服务中的服务名称上
    options.ServiceName = "PingMeiService";
  })
  .ConfigureServices(services =>
  {
    services.AddHostedService<Worker>();
  }).Build();

  host.Run();
}

如果不安装Microsoft.Extensions.Hosting.WindowsServices则不会有UseWindowsService方法,则服务无法启动会报1053错误,

如果没有这句话:options.ServiceName = "PingMeiService"; 可能会报1083错误。