任何人都可以检查我在做什么开始是正确与否请。我正在启动错误服务并自动停止。我想每10分钟运行一次我的服务。请帮助我4个小时,我正在努力
protected override void OnStart(string[] args)
{
try
{
_aTimer.Start();
_aTimer.Enabled = true;
_aTimer = new System.Timers.Timer(10 * 60 * 1000);//10 minutes
_aTimer.AutoReset = true;
_aTimer.Elapsed += new System.Timers.ElapsedEventHandler(_aTimer_Elapsed);
}
catch(Exception ex) {
RMLogger.RMException("ServiceManager", this.GetType().Name.ToString(), ex.ToString());
}
}
答案 0 :(得分:0)
我认为这里出现的问题如下:
我认为计时器会在新的给定实例中自动重置。
尝试先给它一个新实例,然后运行定时器所需的参数。然后启动计时器。
答案 1 :(得分:0)
我觉得你这里的事情有点困惑。你说
我想每10分钟运行一次我的服务。
但是您启动的计时器仅在服务持续运行时每10分钟运行一次。
要么你的意思是你的方式,并希望每10分钟启动一次服务,在这种情况下,我会使用类似Task Scheduler的东西每10分钟启动一次服务,让它进行处理,然后再次关闭。
或者您只是让您的服务持续运行,并且计时器事件将每10分钟触发一次。
答案 2 :(得分:0)
确保您正在为要安装Windows服务的服务器编译相同的.net框架版本
我有同样的问题,我在4.5.2和服务器4.5中编译它。 installutil欺骗我们允许它安装,但它没有启动。