Ostatnio pojawiła się potrzeba stworzenia usługi Windows Service, która będzie działała regularnie, i po napisaniu jej z Net Core odkryłem, że nie da się jej uruchomić jako usługi.
Po przeszukaniu w ogrodzie można znaleźć różne rozwiązania, każde z własnymi zaletami. Po przeczytaniu uznałem, że nie jest to zbyt wygodne, więc wymyśliłem własne pomysły, jak sobie z tym poradzić. Ostatecznym rozwiązaniem jest napisanie trzech lub czterech linii kodu w posershell, a gdy tylko zostanie wykonane, zaplanowane zadanie można pomyślnie dodać
Przede wszystkim napisz program konsolowy na Net Core. Program konsolowy uruchamia twoją logikę przetwarzania.
Kod nie pokazuje ......
Następnie publikuj kod do folderu Zhibao i musisz zagrać nazwę dll swojej konsoli. Tak, nazwa dll, czyli program konsolowy NET Core, domyślnie nie tworzy pliku exe.
Skopiuj ścieżkę do opublikowanego folderu,
Poniższy kod można napisać w dowolnym edytorze, napisałem go przy użyciu wbudowanego Powershell ISE w systemie.
Kod ilustrujący,
Zarejestruj zaplanowane zadanie (Register-ScheduledJob) w systemie, określ nazwę harmonogramu (-Name), określ skrypt do uruchomienia (-ScriptBlock), zawartość skryptu (ścieżka dotnet),
Określ wyzwalacz (-Trigger), utworzenie nowego wyzwalacza Określ czas rozpoczęcia uruchomienia, określ interwał między uruchomieniami (-RepetitionInterval), uruchom raz na godzinę (01:00:00) oraz określ nieokreślony przebieg (-RepeatIndefinitel)
Po prostu uruchom powyższy skrypt PowerShell, aby dodać zaplanowane zadanie do systemu.
Proste i wygodne.
Odrejestruj zaplanowane, zadanie -Nazwa XXXXService --- Usuń zaplanowane zadanie.
|