.net framework windows服务结合定时任务坑点

建立.net windows服务的项目

 

在OnStart中使用定时任务

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
protected override void OnStart(string[] args)
        {
            Timer timer = new Timer();
            timer.Interval = 5 * 1000;
            timer.Elapsed += Timer_Elapsed;
            timer.Enabled = true;
            timer.Start();
        }
 
        private void Timer_Elapsed(object sender, ElapsedEventArgs e)
        {
            File.AppendAllText(@"D:\Quartz.txt", "启动定时任务");
        }
 
        protected override void OnStop()
        {
            File.AppendAllText(@"D:\Quartz.txt", "停止定时任务");
        }

  发布项目

 

 

 一直到最后完成

 

找到对应的\obj\Debug的服务.exe文件运行会报错

 

 

 此时找到installutil.exe将此文件配置成环境变量

 

 

 打开cmd上 使用 installutil 服务.exe 命令此时

 

坑点(弹出用户名密码)

 

 

 此时在发布的项目上找到ProjectInstaller.cs文件

 

InitializeComponent()方法转到定义

 

 

 上文:this.serviceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.LocalSystem;

此时再次执行 installutil 服务.exe 命令启动服务

坑点(无法停止服务)

在任务管理器上结束服务树 名称可能为:项目名称

在进行停止即可

 

 

  

posted @   电器小君子  阅读(120)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示