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