无法通过C#.Net中的Windows服务中的ElapsedEventHandler调用事件

时间:2013-06-18 19:40:43

标签: c# windows-scheduler

我正在尝试编写一个运行创建水晶报表任务的服务。我在Start中使用ElapsedEventHandler调用方法“timer_Elapsed”。但是这种方法没有被调用。

任何有关这方面的帮助将不胜感激。

以下是代码:

public void Start()
        {
           // OnStart(new string[0]);
            Console.WriteLine("Windows Service Started");
            timer1 = new System.Timers.Timer();
            ((System.ComponentModel.ISupportInitialize)(this.timer1)).BeginInit();
            timer1.Enabled = true;
            this.timer1.Interval = 2000;
            this.timer1.Elapsed += new System.Timers.ElapsedEventHandler(this.timer_Elapsed);
            this.timer1.Interval = 2000;
            //timer1.Enabled = true;
            Log("Service Started successfully!!");
            timeCurrent = DateTime.Now.ToString();
            Log("Service Started at" + " " + timeCurrent);
        }


private void timer_Elapsed(object sender, EventArgs e)
        {
            GenerateCrystalReports();
        }

1 个答案:

答案 0 :(得分:0)

你需要在计时器上调用Start来实际启动它。