예제 #1
0
 protected override void OnDoWork(object sender, DoWorkEventArgs e)
 {
     if (!task.AutoUpdate)
     {
         return;
     }
     try
     {
         TaskScheduler.TaskScheduler ts = new TaskScheduler.TaskScheduler();
         if (!string.IsNullOrEmpty(UserName))
         {
             ts.Connect(MachineName, UserName, "", Password);
         }
         else
         {
             ts.Connect(MachineName);
         }
         TaskScheduler.ITaskFolder taskFolder = ts.GetFolder("");
         TaskScheduler.IRegisteredTaskCollection collection = taskFolder.GetTasks(1);
         foreach (TaskScheduler.IRegisteredTask rt in collection)
         {
             if (rt.Name == TaskName)
             {
                 LastRan    = rt.LastRunTime.ToString();
                 NextRun    = rt.NextRunTime.ToString();
                 TaskStatus = (rt.State == TaskScheduler._TASK_STATE.TASK_STATE_DISABLED) ? "Disabled" : "Enabled";
             }
         }
     }
     catch (Exception ex)
     {
         LastRan = ex.Message;
     }
 }
예제 #2
0
        public List <string> GetTaskNameList()
        {
            List <string> result = new List <string>();

            try
            {
                if (!string.IsNullOrEmpty(MachineName))
                {
                    TaskScheduler.TaskScheduler ts = new TaskScheduler.TaskScheduler();
                    if (!string.IsNullOrEmpty(UserName))
                    {
                        ts.Connect(MachineName, UserName, "", Password);
                    }
                    else
                    {
                        ts.Connect(MachineName);
                    }
                    TaskScheduler.ITaskFolder taskFolder = ts.GetFolder("");
                    TaskScheduler.IRegisteredTaskCollection collection = taskFolder.GetTasks(1);
                    foreach (TaskScheduler.IRegisteredTask rt in collection)
                    {
                        result.Add(rt.Name);
                    }
                }
            }
            catch
            {
                result.Clear();
            }
            return(result);
        }