public override void Install(IDictionary mySavedState)
{
try
{
using (TaskService ts = new TaskService())
{
// Create a new task definition and assign properties
TaskDefinition td = ts.NewTask();
td.RegistrationInfo.Description = "Hello";
td.Settings.RestartCount = 50;
td.Settings.RestartInterval = TimeSpan.FromMinutes(1);
// td.Principal.UserId = string.Concat(Environment.UserDomainName, "\\", Environment.UserName);
td.Principal.RunLevel = TaskRunLevel.Highest;
td.Settings.DisallowStartIfOnBatteries = false;
td.Settings.RunOnlyIfIdle = false;
td.Settings.RunOnlyIfNetworkAvailable = false;
td.Settings.StopIfGoingOnBatteries = false;
td.Settings.StartWhenAvailable = true;
td.Settings.WakeToRun = true;
td.Settings.Enabled = true;
td.Settings.AllowHardTerminate = false;
td.Settings.IdleSettings.StopOnIdleEnd = false;
td.Principal.LogonType = TaskLogonType.S4U;
td.Triggers.Add((new DailyTrigger { DaysInterval = 10 }));
td.Actions.Add(new ExecAction("notepad.exe", null, null));
// Register the task in the root folder
ts.RootFolder.RegisterTaskDefinition("Test", td);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
}