Недавно появилась необходимость сделать сервис Windows для регулярного запуска, и после записи на net core я понял, что его нельзя запускать как сервис.
После поиска в саду можно найти несколько решений, каждое из которых имеет свои преимущества. После прочтения я почувствовал, что это не очень удобно, поэтому я придумал свои идеи, как с этим справиться. Окончательное решение — написать три или четыре строки кода в posershell, и сразу после выполнения запланированная задача может быть успешно добавлена
Прежде всего, напишите консольную программу для net core. Консольная программа запускает вашу логику обработки.
Код не показывает ......
Затем опубликуйте код в папке Zhibao, и вам нужно записать название dll вашей консоли. Да, имя dll, консольная программа NET Core, по умолчанию не создаёт exe-файл.
Скопируйте путь к опубликованной папке,
Следующий код можно написать в любом редакторе, я написал его с помощью встроенного в системе Powershell ISE.
Код для иллюстрации,
Зарегистрируйте запланированную задачу (Register-ScheduledJob) в системе, укажите имя расписания (-Name), укажите скрипт для запуска (-ScriptBlock), содержимое скрипта (путь в dotnet),
Укажите триггер (-Trigger), создайте новый триггер Укажите время начала запуска, укажите интервал между забегами (-RepetitionInterval), запускайте раз в час (01:00:00) и укажите бессрочное запуск (-RepeatIndefinitely)
Просто запустите скрипт Powershell выше, чтобы добавить запланированную задачу в систему.
Достаточно просто и удобно.
Unregister-ScheduledJob -Name XXXXService --- Удалить запланированную задачу.
|