C#创建简单的windows服务项目--定时执行任务

今天写了一个定时执行的windows服务项目,这里记录一下,所用软件VS2013,
首先打开VS2013,选择文件->新建->项目,然后选择Visual C#下的windows然后找到windows 服务,然后选择创建,便创建了项目,
在service1设计器中点击右键,选择查看代码,然后在 onStart()函数中添加如何下代码:
 protected override void OnStart(string[] args)
        {
            EventLog.WriteEntry("守护进程服务启动!");//在系统事件查看器中里的应用称故乡时间来源的描述
            WriteLog("守护进程服务程序启动!");//自定义文本日志
            System.Timers.Timer tr = new System.Timers.Timer();//定时器
            tr.Interval = 1000;//设置时间间隔为1秒
            tr.Elapsed += new System.Timers.ElapsedEventHandler(ChkSrv);//到达时间就执行的事件
            tr.AutoReset = true;//设置是执行一次false,还是一直执行true
            tr.Enabled= true;//时候执行System.Timers.ElapsedEvent事件
            
        }
这个函数也就是服务启动的时候运行的,
然后在 onStop()函数中添加如下代码:
 protected override void OnStop()
        {
            WriteLog("服务停止");
        }
   public void ChkSrv(object source,System.Timers.ElapsedEventArgs e)
        {
            int second = e.SignalTime.Second;
            if (second==00)
            {
               System.Timers.Timer tt = (System.Timers.Timer)source;
                tt.Enabled = false;
                WriteLog("测试开始!");
                tt.Enabled = true;

            }
        }

然后在service1的设计器中点击右键,选择添加安装程序,在安装程序中选择serviceProcessInstaller,查看属性,将Account改为LocalSystem,
在安装程序中选择secviceInstaller1,查看其属性,修改ServiceName,这个名字将显示在服务中,
然后选中项目,右键生成项目,然后在debug目录下,找到执行程序,然后在C:\Windows\Microsoft.NET\Framework\v4.0.30319目录下,找到InstallUtil.exe
这里我的程序所用框架是.net4.0以上版本,如果用的是其他版本,就在Framework文件下,查找,
然后以管理员身份打开命令行窗口,在窗口中输入:D:\项目\WindowsServiceTest\WindowsServiceTest\bin\Debug\InstallUtil.exe D:\项目\WindowsServiceTest\WindowsServiceTest\bin\Debug \WindowsServicetest.exe就可以把服务成功安装了!

©️2020 CSDN 皮肤主题: 撸撸猫 设计师:设计师小姐姐 返回首页