zoukankan      html  css  js  c++  java
  • C# 写Windows服务

          服务是一个运行在后台的程序,他没有界面,不能交互,只能孤独的独自运行。

      在开始->运行->输入services.msc可以打开服务管理器,这里可以查看和管理服务  

      很多时候都会用到服务,因为服务简化了我们的操作,省去了很多人力,最近公司需要同步数据,我也自己写了个服务,这里把服务的主要程序贴出来,给大家参考,也方便以后自己查阅。

    C#服务程序
    protected override void OnStart(string[] args)
    {
    //启动timer
    //period = ServiceSettings.Default.ServiceTimerIntervalSecond * 1000;
    // period = Convert.toint * period;//
    serviceTimer = new Timer(new TimerCallback(TimerCallback), state, 0, period);


    }

    protected override void OnStop()
    {
    //停止计时器
    EndThing();
    serviceTimer.Change(Timeout.Infinite, Timeout.Infinite);
    }

    protected override void OnContinue()
    {
    //重新开始计时
    serviceTimer.Change(0, period);

    }

    protected override void OnPause()
    {
    //停止计时器
    EndThing();
    serviceTimer.Change(Timeout.Infinite, Timeout.Infinite);

    }

    public void TimerCallback(object obj)
    {
    //隔一段时间调用一次
    DoThing();
    }

      serviceTimer = new Timer(new TimerCallback(TimerCallback), state, 0, period);
    此处,state用于保存状态,如果不需要,保存状态,可以传入null。第三个参数0表示立即调用TimerCallback方法,如果不需要立即调用,可以传入period。period是计时器的计时间隔,单位为毫秒。

      服务写好后,还得配置,以方便安装

      因此,首先转到设计视图中,并选择属性窗口(可以按下F4)。

      把CanStop和CanShutdown设置为true。在安装之前,我们必须要安装一个安装程序。

      右击设计视图窗口,然后选择"Add Installer"。然后,它将显示ProjectInstaller.cs。在这个文件中,serviceInstaller1和serviceProcessInstaller1都存在。转到serviceProcessInstaller1属性处:

      · 把Account设置为LocalSystem。

      · 然后,转到serviceInstaller1属性处。

      · 把DisplayName和ServiceName设置为Monitoring。

      · 设置启动类型(StartType)为automatic。

          服务写好了,还需要注册,不然不会运行,方法如下:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\installutil  Path

      方法卸载的方法:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\installutil -u Path

      本人长期代人写DEMO,功能点DEMO、入门教程等,如果有需要的可以联系我

  • 相关阅读:
    Salesforce 大数据量处理篇(一)Skinny Table
    salesforce零基础学习(九十九)Salesforce Data Skew(数据倾斜)
    将博客搬至CSDN,新地址见此文章内容
    Spring Boot
    SpringBoot的模块及结构
    不建议现场注入– Spring IOC
    程序员健康指南
    如何使用Chrome DevTools花式打断点
    这堂课一上40年, 他告诉学生:就算你进了麻省理工, 不懂这个也很难成功!
    非对称加密算法--RSA加密原理
  • 原文地址:https://www.cnblogs.com/_fyz/p/1864378.html
Copyright © 2011-2022 走看看