최근에 정기적으로 실행될 윈도우 서비스 서비스를 만들어야 할 필요가 생겼고, 넷코어로 작성한 후 서비스로 실행할 수 없다는 것을 알게 되었습니다.
정원을 찾아본 결과, 각기 다른 장점이 있는 다양한 해결책이 있습니다. 그 글을 읽고 나서 그다지 편리하지 않다고 느껴서 제 방식으로 해결할 아이디어를 생각해 냈습니다. 최종 해결책은 posershell에 세 줄에서 네 줄의 코드를 작성하고, 실행되자마자 예약된 작업을 성공적으로 추가할 수 있다는 것입니다
우선, 넷코어 콘솔 프로그램을 작성하세요. 콘솔 프로그램이 처리 로직을 실행합니다.
코드에는 ...... 표시가 안 나옵니다
그 다음 코드를 Zhibao 폴더에 게시하고, 콘솔의 dll 이름을 기록해야 합니다. 네, DLL 이름인 NET Core 콘솔 프로그램은 기본적으로 exe 파일을 생성하지 않습니다.
게시된 폴더 경로를 복사하세요,
다음 코드는 어떤 에디터에서도 작성할 수 있으며, 시스템에 내장된 Powershell ISE를 사용해 작성했습니다.
예를 들어,
시스템에 예약된 작업(Register-ScheduledJob)을 등록하고, 일정 이름(-Name)을 지정하며, 실행할 스크립트(-ScriptBlock), 스크립트 내용(dotnet path)을 지정합니다.
트리거 지정(-Trigger), 새 트리거 생성, 실행 시작 시간 지정, 실행 간격 지정(-RepetitionInterval), 1시간 1회 실행(01:00:00), 무기한 실행(-RepeatIndefinitely) 지정
위에 있는 Powershell 스크립트를 실행해서 시스템에 예약된 작업을 추가하면 됩니다.
간단하고 편리하다.
Unregister-ScheduledJob -Name XXXXService --- 예약된 작업을 삭제하기.
|