多次启动Windows Service

时间:2019-01-16 14:28:25

标签: c# timer windows-services

我正在编写Windows c#服务,并且必须在其他时间启动我的服务。时间不是固定的,它们是动态的,可以一天(time1:11:50 am,time2:12:50 pm,time1:16:24 pm)一天以上。我的服务仅在第一次正确启动,但随后只是随机启动

这是我的代码

  foreach (var timer in args)
        {

            _timer = new System.Timers.Timer();

            _timer.Enabled = true;

            _scheduleTime = Convert.ToDateTime(timer);
            _timer.Interval = _scheduleTime.Subtract(DateTime.Now).TotalSeconds * 1000;

            _timer.Elapsed += new System.Timers.ElapsedEventHandler(Timer_Elapsed);



        }

Timer_Elapsed代码是:

  protected void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
    {
        try
        {
            //onDebug();
            Console.WriteLine("Completed Successfully");
            Log.writeFile("Completed Successfully");
            if (_timer.Interval != 24 * 60 * 60 * 1000)
            {
                _timer.Interval = 24 * 60 * 60 * 1000;
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
        }

    }

我想做的是在args数组中给定的时间启动服务

谢谢

0 个答案:

没有答案