windows服务

2.右键点击Service1.cs,查看代码, 用于编写操作逻辑代码

3.代码中OnStart用于执行服务事件,一般采用线程方式执行方法,便于隔一段事件执行一回

 System.Timers.Timer timer1;  //计时器
        public Service1()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            EventLog.WriteEntry("我的服务器启动");
            //Writelog("");
            System.Timers.Timer timer1 = new System.Timers.Timer();
            timer1.Interval = 1000;
            timer1.Elapsed += new System.Timers.ElapsedEventHandler(click_ceshi);
            timer1.AutoReset = true;
            timer1.Enabled = true;
        }

        protected override void OnStop()
        {
            Log.Error("tingzhi fuwu +执行服务");
            this.timer1.Enabled = false;
        }

        public void click_ceshi(object source, System.Timers.ElapsedEventArgs e)
        {
            int intHour = e.SignalTime.Hour;
            int intMinute = e.SignalTime.Minute;
            int intSecond = e.SignalTime.Second;
            if (intHour == 10 && intMinute == 30 && intSecond == 00)
            {
                try
                {
                    System.Timers.Timer tt = (System.Timers.Timer)source;

                    tt.Enabled = false;

                    sendMessage();

                    tt.Enabled = true;

                }
                catch (Exception)
                {
                    Log.Error("出错了我的测试+执行服务");
                    throw;
                }
            }
        }
        public void sendMessage()
        {
            try
            {
                //new SendEmai().Email("");
                Log.Error("我的测试+执行服务");
            }
            catch (Exception)
            {
                Log.Error("出错了我的测试+执行服务");
                throw;
            }

        }
  1. 打开Service1.cs视图界面
 
  1. 2

在视图内右键-->添加安装程序

 

  1. 3

项目中添加了ProjectInstaller.cs文件,该文件中视图自动会添加俩个组件

serviceProcessInstaller1

serviceInstaller1

 

  1. 4

选中serviceProcessInstaller1组件,查看属性,设置account为LocalSystem

 

  1. 5

选中serviceInstaller1组件,查看属性

设置ServiceName的值, 该值表示在系统服务中的名称

设置StartType, 如果为Manual则手动启动,默认停止,如果为Automatic为自动启动

设置Description,添加服务描述

 

  1. 6

重新生成项目

END

安装服务

  1. 1

点击 开始,运行中输入cmd,获取命令提示符

win7需要已管理员的身份启动,否则无法安装

 

  1. 2

输入 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319 回车

切换当前目录,此处需要注意的是,在C:\Windows\Microsoft.NET\Framework目录下有很多类似版本,具体去哪个目录要看项目的运行环境,例 如果是.net framework2.0则需要输入 cd C:\Windows\Microsoft.NET\Framework\v2.0.50727 

  1. 3

输入 InstallUtil.exe E:\TestApp\Winform\WinServiceTest\WinServiceTest\bin\Debug\WinServiceTest.exe 回车

说明:E:\TestApp\Winform\WinServiceTest\WinServiceTest\bin\Debug\WinServiceTest.exe表示项目生成的exe文件位置 

  1. 4

打开服务,就可以看到已经安装的服务了

卸载服务

卸载很简单,打开cmd, 直接输入 sc delete WinServiceTest便可

 

 

 

posted @ 2016-09-05 10:36  wes_so  阅读(174)  评论(0)    收藏  举报
TOP