如何使用c#

时间:2016-09-27 09:02:54

标签: c# wpf scheduled-tasks taskservice

我希望在3秒后运行我的计划任务,因为我已经在我的WPF应用程序中编写了代码。

 using (var ts = new TaskService())
 { 
     TaskDefinition td = ts.NewTask();
     td.Settings.MultipleInstances = TaskInstancesPolicy.IgnoreNew;
     td.RegistrationInfo.Description = "TestAPP";

     var trigger = new TimeTrigger();
     trigger.Repetition.Interval = TimeSpan.FromSeconds(3000);
     lblProcess.Content = DateTime.Now.Second; //print current second in a label. 
     td.Triggers.Add(trigger);

     td.Actions.Add(new ExecAction(System.Reflection.Assembly.GetExecutingAssembly().Location, null, System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location)));

     ts.RootFolder.RegisterTaskDefinition(@"TestTask", td);
 }

在这里,我想检查一下,在VS中毁了之后,它会每3秒运行一次,所以我打印第二个标签lblProcess

但它没有每3秒更新一次,我做错了吗?

修改-1:

我之前已经读过这个:Creating Scheduled Tasks

没有什么比如何检查。

修改-2:

如果我使用3.0代替3000,那么它会给我一个错误。

  

指定的参数超出了有效值的范围。参数   名称:间隔

2 个答案:

答案 0 :(得分:1)

TimeSpan.FromSeconds(3);

当你超过3000时,输入3000秒。

https://msdn.microsoft.com/en-us/library/system.timespan.fromseconds(v=vs.110).aspx

答案 1 :(得分:1)

您无法在任务计划程序中设置小于一分钟的间隔