Son zamanlarda, düzenli olarak çalıştırılacak bir Windows Service servisi yapma ihtiyacı vardı ve bunu net core ile yazdıktan sonra bunun bir servis olarak çalıştırılamadığını fark ettim.
Bahçede arama yaptıktan sonra, her birinin kendine özgü avantajları olan çeşitli çözümler var. Okuduktan sonra çok uygun olmadığını hissettim, bu yüzden kendi fikirlerimi düşündüm. Son çözüm, posershell'de üç veya dört satır kod yazmaktır ve bu işlem yapılır yapılmaz planlanmış görev başarıyla eklenebilir
Öncelikle, net core konsol programı yaz. Konsol programı işlem mantığınızı çalıştırıyor.
Kod ...... göstermiyor
Sonra kodu Zhibao'nun klasörüne yayınlayın ve konsolunuzun dll adını kaydetmeniz gerekiyor. Evet, dll adı, yani NET Core konsol programı, varsayılan olarak exe dosyası oluşturmaz.
Yayınlanan klasör yolunu kopyala,
Aşağıdaki kod herhangi bir editörde yazılabilir, ben bunu sistemin yerleşik Powershell ISE ile yazdım.
Örneklemek için kod,
Sistemde planlanmış bir görevi kaydedin (Register-ScheduledJob), program adını (-Name), çalıştırılacak betikleri (-ScriptBlock), script içeriğini (dotnet yolu) belirtin,
Bir tetikleyici belirtin (-Trigger), yeni bir tetikleyici oluşturun Çalışmanın başlangıç zamanını belirtin, koşular arasındaki aralığı belirtin (-RepetitionInterval), saatte bir çalıştırın (01:00:00) ve süresiz bir koşu belirtin (-RepeatIndelimitly)
Yukarıdaki Powershell betiklerini çalıştırarak sisteme planlanmış bir görev ekleyin.
Oldukça basit ve kullanışlı.
Unregister-ScheduledJob -Name XXXXService --- Zamanlanmış görevi sil.
|