C# 创建、安装和卸载Windows服务程序

本文介绍如何使用Windows服务和Timer控件创建一个定时执行特定任务的服务程序。步骤包括新建服务程序、配置Timer、注册事件处理程序及设置服务安装属性。

1、新建一个windows服务程序。


2、点击这个服务类,从工具箱中加入一个Timer控件,右键这个Timer控件 命名为 timerOrderDeductionDetailJob,Enable设为True。



3、右键这个服务类,在OnStart方法中设置Timer控件的启动间隔时间。

        protected override void OnStart(string[] args)
        {
            // TODO:  在此处加入代码以启动服务。

this.timerOrderDeductionDetailJob.Interval = 1000; }


4、双击Timer时间控件,注冊一个事件

        private void timerOrderDeductionDetailService_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        { 
          Working();//运行的方法
        }

5、运行的方法

       private void Working()
        {


            new ExceptionHelper().WriteLog("Start OrderDeductionDetailJob Job " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), @"OrderDeductionDetailJob"            );
            this.timerOrderDeductionDetailJob.Enabled = false;

            try
            {
                OrderDeductionDetailJob Order = new OrderDeductionDetailJob();
                Order.Execute();
            }
            catch (Exception ex)
            {
                StringBuilder sbError = new StringBuilder();
                sbError.Append("错误时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + Environment.NewLine);
                sbError.Append("错误文件:" + ex.Source + Environment.NewLine);
                sbError.Append("错误信息:" + ex.Message + Environment.NewLine);
                sbError.Append("引发错误的方法:" + ex.TargetSite + Environment.NewLine);
                sbError.Append("引发错误的跟踪:" + ex.StackTrace + Environment.NewLine);
                new ExceptionHelper().WriteLog(sbError.ToString(), @"OrderDeductionDetailJob");
            }

            this.timerOrderDeductionDetailJob.Enabled = true;
            new ExceptionHelper().WriteLog("End OrderDeductionDetailJob Job " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), @"OrderDeductionDetailJob");
            new ExceptionHelper().WriteLog("* * * * * * * * * * * * * * * * * * * * * * * * *" + Environment.NewLine + Environment.NewLine + Environment.N            ewLine, @"OrderDeductionDetailJob");
        }

6、加入服务的安装程序,点击这个服务类,右键加入安装程序。


7、点击这个安装程序类。


8、改变安装服务名称。StartType改为Automatic。


9、serviceProcessInstaller1  右键属性 Account改为LocalSystem。


10、编译这个服务,安装。安装方法分为两种:

     (1)、windows+R (执行命令提示符)。输入cmd

                   执行命令:       C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe   (空格) window项目的bin\Release下.exe文件地址    

                   比如:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe (空                    格) F:\chenfeilong\Project\AidaijiaWin\ADJ.Job.OrderDeductionDetailService\bin\Release\ADJ.Job.OrderDeductionDetailService.exe

    

      (2)、sc create 服务名称 binPath=(空格)  “windows服务项目的bin\Release下.exe文件地址”   start=auto 


11、卸载windows服务:


 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe   -u  window项目的bin\Release下.exe文件地址  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值