Sto utilizzando Task Scheduler per pianificare la mia attività nell'applicazione C#. Penso di avere la comprensione di base di questa libreria.Come pianificare l'attività personalizzata tramite C#
Ma ora ho bloccato in un posto in cui voglio creare un'azione personalizzata che eseguirà sul set schedule.Like il built-in action cioè EmailAction (che invierà la posta in programma set), ShowMessageAction (che sarà mostra un messaggio di avviso sul programma impostato), voglio creare un'azione che eseguirà il mio codice C# e quel codice salverà alcuni dati nel mio database.
Quello che ho cercato ancora è: ho creato una classe CustomAction che eredita Azione, come:
public class NewAction : Microsoft.Win32.TaskScheduler.Action
{
public override string Id
{
get
{
return base.Id;
}
set
{
base.Id = value;
}
}
public NewAction()
{
}
}
E qui è il mio codice task scheduler:
..
...
// 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
TimeTrigger tt = new TimeTrigger();
tt.StartBoundary = DateTime.Today + TimeSpan.FromHours(19) + TimeSpan.FromMinutes(1);
tt.EndBoundary = DateTime.Today + TimeSpan.FromHours(19) + TimeSpan.FromMinutes(3);
tt.Repetition.Interval = TimeSpan.FromMinutes(1);
td.Triggers.Add(tt);
// Create an action that will launch Notepad whenever the trigger fires
td.Actions.Add(new NewAction()); <==========================
// Register the task in the root folder
ts.RootFolder.RegisterTaskDefinition(@"Test", td);
// Remove the task we just created
//ts.RootFolder.DeleteTask("Test");
}
...
....
Sulla linea (indicato dalla freccia) ricevo l'eccezione:
valore non rientra l'atteso compito gamma scheduler
Non sono sicuro di quello che sto cercando di realizzare è ancora possibile o no, se è possibile che vi prego di GUID nella direzione corretta?
Non si può semplicemente eseguire azioni casuali. Ci sono solo 4 azioni disponibili. Per eseguire codice personalizzato, esegui un processo con l'azione exec che eseguirà il codice che desideri. – devshorts