Onlangs was er behoefte om een Windows Service-service te maken die regelmatig kan draaien, en nadat ik deze met Net Core had geschreven, ontdekte ik dat het niet als service kon worden uitgevoerd.
Na het zoeken in de tuin zijn er verschillende oplossingen, elk met zijn eigen voordelen. Na het lezen vond ik het niet erg handig, dus bedacht ik mijn eigen ideeën om ermee om te gaan. De uiteindelijke oplossing is om drie of vier regels code in posershell te schrijven, en zodra deze is uitgevoerd, kan de geplande taak succesvol worden toegevoegd
Schrijf allereerst een netcore-consoleprogramma. Het consoleprogramma voert je verwerkingslogica uit.
De code toont geen ......
Publiceer dan de code in de map van Zhibao, en je moet de dll-naam van je console noteren. Ja, de dll-naam, het NET Core-consoleprogramma, maakt standaard geen exe-bestand aan.
Kopieer het pad van de gepubliceerde map,
De volgende code kan in elke editor worden geschreven, ik heb het geschreven met de ingebouwde Powershell ISE van het systeem.
Code ter illustratie,
Registreer een geplande taak (Register-ScheduledJob) in het systeem, geef de planningsnaam (-Naam) op, geef het script aan dat uitgevoerd moet worden (-ScriptBlock), de scriptinhoud (dotnet-pad),
Specificeer een trigger (-Trigger), maak een nieuwe trigger Geef de starttijd van de run aan, geef het interval tussen runs aan (-RepetitionInterval), voer eens per uur uit (01:00:00), en specificeer een onbepaalde run (-RepeatIndefinitely)
Voer gewoon het Powershell-script hierboven uit om een geplande taak aan het systeem toe te voegen.
Eenvoudig en handig genoeg.
Unregister-ScheduledJob -Naam XXXXService --- Verwijder de geplande taak.
|