1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5:
6: namespace Windows.TaskSchedule
7: {
8: public interface IJob
9: {
10: void Init();
11: void Excute();
12: void OnError(Exception ex);
13: }
14: }
DemoJobhtml
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5:
6: namespace Windows.TaskSchedule
7: {
8: public class DemoJob:IJob
9: {
10: static log4net.ILog logger = log4net.LogManager.GetLogger(typeof(DemoJob));
11: DateTime date = new DateTime();
12: public void Init()
13: {
14: date = DateTime.Now;
15: }
16:
17: public void Excute()
18: {
19: logger.Debug(date);
20: }
21:
22: public void OnError(Exception ex)
23: {
24: logger.Debug(ex.ToString());
25: }
26: }
27: }
Jobs.configgit
1: <?xml version="1.0" encoding="utf-8" ?>
2: <Jobs serverName="demo-server" displayName="测试服务" description="测试服务的描述">
3: <Job name="demoJob1" type="Windows.TaskSchedule.DemoJob,Windows.TaskSchedule" cornExpress="0/3 * * * * ?" />
4: </Jobs>
serverName:发布成服务时的服务名称(最好不要有空格)github
displayName:发布成服务时的服务显示名称windows
description:发布成服务时的服务描述框架
Job节点就是各个任务的具体配置了,name:任务的名称(最好惟一),type:插件的具体实例与程序集,cornExpress:任务执行的时间,只支持corn表达式测试
若是是开发调试阶段,能够直接启动Windows.TaskSchedule.exe 这样能够直接在控制台输出相关信息。spa
若是要部署成windows服务,须要在命令行下 先执行Windows.TaskSchedule.exe install 进行安装,而后启动:Windows.TaskSchedule.exe start插件
卸载windows服务也很简单,直接执行 Windows.TaskSchedule.exe uninstall 具体可参考topshelf组件的使用方法。http://topshelf-project.com/命令行
想要源码,若是你细心的话在文章的开头就应该有啦,我仍是贴一下地址吧:https://github.com/leleroyn/Windows-TaskSchedule调试