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


    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:WindowsMicrosoft.NETFramework64v4.0.30319InstallUtil.exe   (空格) window项目的binRelease下.exe文件地址    

                       比如:C:WindowsMicrosoft.NETFramework64v4.0.30319InstallUtil.exe (空                    格) F:chenfeilongProjectAidaijiaWinADJ.Job.OrderDeductionDetailServiceinReleaseADJ.Job.OrderDeductionDetailService.exe

        

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


    11、卸载windows服务:


     C:WindowsMicrosoft.NETFramework64v4.0.30319InstallUtil.exe   -u  window项目的binRelease下.exe文件地址  



  • 相关阅读:
    CentOS 7.0安装Zimbra 8.6邮件服务器
    centos7备份还原与grub2引导和rescue模式修改root密码
    通过grub硬盘安装centos7
    CentOS系统中常用查看系统信息和日志命令小结
    安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一)
    linux 下shell脚本执行多个命令的方法
    centos Crontab
    抓取某网站信息时遇到的问题及解决 The character set provided in ContentType is invalid. Cannot read content as string using an invalid character set
    HttpClient不必每次新建实例而RestSharp推荐新建实例的原因
    .net core读取json配置文件
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5359649.html
Copyright © 2020-2023  润新知