Запуск другой службы Windows и ее закрытие на уровне API после запуска и закрытия. ⇐ C#
-
Anonymous
Запуск другой службы Windows и ее закрытие на уровне API после запуска и закрытия.
У меня проблема. На уровне API мне нужно запустить службу Windows (разную) и остановить ее после закрытия API. Хотя запуск для меня не будет большой проблемой, потому что я хотел бы использовать класс ServiceController, чтобы проверить, имеет ли служба соответствующий статус, я действительно не знаю, как это сделать при закрытии приложения в NET 6.0 Мой код:
var webApplicationOptions = новые WebApplicationOptions { ContentRootPath = AppContext.BaseDirectory, Аргументы = аргументы, }; var builder = WebApplication.CreateBuilder(webApplicationOptions); Directory.SetCurrentDirectory(AppContext.BaseDirectory); builder.Host.UseContentRoot(AppContext.BaseDirectory); builder.Host.UseWindowsService(); ServiceController RabbitService = новый ServiceController(builder.Configuration.GetSection("RabbitMQServiceName").Value); если (rabbitService.Status == ServiceControllerStatus.Stopped) кроликService.Start();
У меня проблема. На уровне API мне нужно запустить службу Windows (разную) и остановить ее после закрытия API. Хотя запуск для меня не будет большой проблемой, потому что я хотел бы использовать класс ServiceController, чтобы проверить, имеет ли служба соответствующий статус, я действительно не знаю, как это сделать при закрытии приложения в NET 6.0 Мой код:
var webApplicationOptions = новые WebApplicationOptions { ContentRootPath = AppContext.BaseDirectory, Аргументы = аргументы, }; var builder = WebApplication.CreateBuilder(webApplicationOptions); Directory.SetCurrentDirectory(AppContext.BaseDirectory); builder.Host.UseContentRoot(AppContext.BaseDirectory); builder.Host.UseWindowsService(); ServiceController RabbitService = новый ServiceController(builder.Configuration.GetSection("RabbitMQServiceName").Value); если (rabbitService.Status == ServiceControllerStatus.Stopped) кроликService.Start();
Мобильная версия