. NET Базовый рабочий проект "Запуск" с аргументом "0" - PullRequest
0 голосов
/ 28 апреля 2020

Я получил рабочий проект и подготовил в нем несколько вещей (в основном журнал 4net с конфигом и рабочим). Когда я запускаю его из Visual Studio, он работает отлично, однако ...

        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureAppConfiguration((hostContext, config) =>
                {
                    config.AddJsonFile("appsettings.json", optional: true);
                    config.AddJsonFile($"appsettings.{hostContext.HostingEnvironment.EnvironmentName}.json", optional: true);
                    config.AddEnvironmentVariables();
                })
                .UseWindowsService()
                .ConfigureLogging(logging =>
                {
                    logging.AddLog4Net("log4net.config");
                    logging.AddConsole();
                    logging.SetMinimumLevel(LogLevel.Debug);
                })
                .ConfigureServices((hostContext, services) =>
                {
                    services.AddHostedService<SomeWorker>();
                    // DI...
                });

После использования его в качестве Windows службы я получаю сообщение об ошибке. Я что-то здесь упускаю? Кажется, что на самом деле не так уж много всего может go ошибаться.

2020-04-28T14:11:27.2038348Z ##[section]Starting: Start Windows Service: ServiceName
2020-04-28T14:11:27.2038348Z ==============================================================================
2020-04-28T14:11:27.2038348Z Task         : Start Windows Service
2020-04-28T14:11:27.2038348Z Description  : Start a windows service.
2020-04-28T14:11:27.2038348Z Version      : 8.0.0
2020-04-28T14:11:27.2038348Z Author       : Michael Barry
2020-04-28T14:11:27.2038348Z Help         : [More Information](https://github.com/jabbera/my-vsts-tasks)
2020-04-28T14:11:27.2038348Z ==============================================================================
2020-04-28T14:11:28.3796348Z Starting Windows Services ServiceName and setting startup type to: Automatic.
2020-04-28T14:11:28.9180348Z ##[error]Exception calling "Start" with "0" argument(s): "Cannot start service ServiceName on computer '.'."
2020-04-28T14:11:28.9648348Z ##[section]Finishing: Start Windows Service: ServiceName

1 Ответ

0 голосов
/ 28 апреля 2020

Вы, вероятно, запускаете сервис без аргументов. При запуске службы из VS метод Main вызывается с одним аргументом запуска (% LAUNCHER_ARGS%). При запуске этого сервиса как Windows этот аргумент, вероятно, отсутствует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...