web项目中经常使用到定时操作需求,之前用了很多种方式,定时功能始终无法稳定运行,以下采用了windows服务的方式,运行比较稳定的一种方式。
1、windows服务创建

2、开始编写代码

3、程序代码
项目自动包括了服务启动方法和停止方法
- 程序启动方法
protected override void OnStart(string[] args)
- 程序停止方法
protected override void OnStop()
4、定时服务
我们项目中的需求是定时触发一个功能
- 首先:创建Timer定时控件

- 启动定时服务,我们是需求1分钟执行一次

- 定时服务功能,当时间点与配置文件中相等时触发功能,timea 和url,时App.config文件中进行配置

.
5、服务停止时,Timer控件停止
timea.Enabled=false;
6、添加安装程序


其中StartType,我们设置为Automatic 自动启动
7、安装卸载
使用InstallUtil.exe工具进行安装,默认在C:\Windows\Microsoft.NET\Framework\v4.0.30319 ,查看电脑中是否存在,可以在系统文件中进行查找。
- 采用命令行方式进行安装,(建议采用管理员身份进行安装,其他身份可能会出现权限不足的情况)。

- 指定到安装工具目录
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319

- 开始安装服务
installutil E:\Temp\test.exe
exe程序是项目中生成的exe文件
- 卸载服务
installutil -u E:\Temp\test.exe
8、安装和卸载操作完成,可以在服务中进行查看了, 运行services.msc 打开服务窗口,查看安装服务,需要将服务进行启动
浙公网安备 33010602011771号