1
我正在開發一個窗口服務,我必須安排它。時間表設置爲每週三天,每天四次。在任何時候開始服務時,它必須選擇下一個執行時間。C#:獲取窗口服務的下一個執行時間
該下一個執行時間可以在同一天或下一個預定的日期(可能與一天或兩天的差距)。
我正在開發一個窗口服務,我必須安排它。時間表設置爲每週三天,每天四次。在任何時候開始服務時,它必須選擇下一個執行時間。C#:獲取窗口服務的下一個執行時間
該下一個執行時間可以在同一天或下一個預定的日期(可能與一天或兩天的差距)。
看看Task Scheduler Managed Library (Codeplex)。我相信它是由Microsoft自己維護的。
一旦添加DLL引用Microsoft.Win32.TaskScheduler
,你真的可以很容易地使用它像這樣:
var taskService = new TaskService();
var task = taskService.NewTask();
task.Triggers.Add(new WeeklyTrigger(DaysOfTheWeek.Friday, 1));
task.Actions.Add(new ExecAction("YourProgram.exe", null, null));
task.RootFolder.RegisterTaskDefinition("YourTaskName", task);
這將註冊運行每週五,執行YourProgram.exe的任務。
總是很高興看到你已經嘗試過。 – Brett
你爲什麼要手動啓動它? Windows服務是一種在後臺持續運行的事物,並且在時間到了時做它應該做的事情。作爲替代方案,您可以使用您也可以進行微調的計劃任務。 –
我必須首次啓動它。在任何時候我會啓動它,它必須選擇下一個執行時間。 – Lali