一尘不染

创建计划任务

c#

我正在从事C#WPF项目。我需要允许用户创建计划任务并将其添加到Windows Task Scheduler。

我该怎么做呢?我需要什么使用指令和引用,因为我在搜索Internet时发现不多。


阅读 226

收藏
2020-05-19

共1个答案

一尘不染

您可以使用Task Scheduler Managed
Wrapper

using System;
using Microsoft.Win32.TaskScheduler;

class Program
{
   static void Main(string[] args)
   {
      // Get the service on the local machine
      using (TaskService ts = new TaskService())
      {
         // Create a new task definition and assign properties
         TaskDefinition td = ts.NewTask();
         td.RegistrationInfo.Description = "Does something";

         // Create a trigger that will fire the task at this time every other day
         td.Triggers.Add(new DailyTrigger { DaysInterval = 2 });

         // Create an action that will launch Notepad whenever the trigger fires
         td.Actions.Add(new ExecAction("notepad.exe", "c:\\test.log", null));

         // Register the task in the root folder
         ts.RootFolder.RegisterTaskDefinition(@"Test", td);

         // Remove the task we just created
         ts.RootFolder.DeleteTask("Test");
      }
   }
}

或者,您可以使用本机 API或使用Quartz.NET。请参阅了解详情。

2020-05-19