我做一个Windows服务的程序,最后生成的时候会产生一个调用目标发生异常的错误,不知什么原因,劳驾各位了
using System;
using System.Collections.Generic;
using System.Linq;
using System.ServiceProcess;
using System.Text;namespace WindowsService2
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        static void Main()
        {
            ServiceBase[] ServicesToRun;
            ServicesToRun = new ServiceBase[] 

new Service1() 
};
            ServiceBase.Run(ServicesToRun);------------调用的目标发生了异常。 为什么啊,谢谢各位大侠!!!!!急!!!!
        }
    }
}

解决方案 »

  1.   

    Service1 的原因 没有代码呀
      

  2.   

    下面是service1的代码,哪里有问题啊,请教各位大侠!!!!急!!!!万分感谢阿!!!!!
       
            protected override void OnStart(string[] args)
            {
                // TODO: 在此处添加代码以启动服务。
                double sleeptime = ValidatorDate1(System.DateTime.Now.ToString("yyy-MM-dd HH:mm:ss"), System.DateTime.Now.ToString("yyy-MM-dd ") + "07:00:00");
                if (sleeptime < 0) sleeptime += 60 * 60 * 1000;
                writestr("开始", sleeptime);
                System.Timers.Timer t = new System.Timers.Timer(sleeptime);//实例化Timer类,设置间隔时间为10000毫秒; 
                t.Elapsed += new System.Timers.ElapsedEventHandler(rebootsystem);//到达时间的时候执行事件; 
                t.AutoReset = true;//设置是执行一次(false)还是一直执行(true); 
                t.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件; 
                writestr("结束", sleeptime);        }
            public void rebootsystem(object source, System.Timers.ElapsedEventArgs e)
            {
                System.Diagnostics.Process.Start("shutdown", "/r /f /t 0");
            }
            public static double ValidatorDate1(string strDateA, string strDateB)
            {
                string strFrom = strDateB;
                string strTo = strDateA;
                TimeSpan ts = Convert.ToDateTime(strFrom) - Convert.ToDateTime(strTo);
                double count = ts.TotalSeconds * 1000;
                return count;
            }
            public void writestr(string readme, double sleeptime)
            {
                //debug==================================================
                StreamWriter dout = new StreamWriter(@"c:\" + System.DateTime.Now.ToString("yyyMMddHHmmss") + readme + ".txt");
                dout.Write("\nSleepTime:" + Convert.ToString(sleeptime) + "\n操作时间:" + System.DateTime.Now.ToString("yyy-MM-dd HH:mm:ss"));
                //debug==================================================
                dout.Close();
            }         protected override void OnStop()
            {
            }        private void timer1_Tick(object sender, EventArgs e)
            {
                ReadQuotes();
            }
            
      

  3.   

    调试Windows service,把exe文件附加到进程,进行调试,记住调试的版本号要和你最新的代码一致。
      

  4.   

    ServiceBase[] ServicesToRun; 
    ServicesToRun = new ServiceBase[]...这是不是少了个"()"啊