7
我正在使用Task Scheduler來安排我在c#應用程序中的任務。我想我對這個圖書館有了基本的瞭解。如何通過c安排自定義任務#
但現在我卡在那裏我想創建一個自定義操作,這將在集schedule.Like的built-in action即EmailAction(這將在設定的時間表發送郵件)執行的地方,ShowMessageAction(將在設定的時間表上顯示警報消息),我想創建一個將運行我的C#代碼的動作,並且該代碼將一些數據保存到我的數據庫。
我試過卻又是:我創建了一個類CustomAction它繼承行動,如:
public class NewAction : Microsoft.Win32.TaskScheduler.Action
{
public override string Id
{
get
{
return base.Id;
}
set
{
base.Id = value;
}
}
public NewAction()
{
}
}
這是我的任務調度代碼:
..
...
// 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");
}
...
....
上線(箭頭指出)我得到的例外:
值不在預期範圍的任務調度
內我不知道什麼,我試圖實現,甚至有可能與否,如果有可能比請我的GUID的正確方向?
你不能只是讓它執行隨機動作。只有4個行動可用。運行自定義代碼使用exec操作執行一個進程,該進程將執行任何你想要的代碼。 – devshorts