Windows services Windows服务计时器只工作两次

Windows services Windows服务计时器只工作两次,windows-services,Windows Services,我想写windows服务,它每天7点工作。但blow代码只在两天内有效。我找不到原因 蒂亚 logger.Info(“OnStart启动”); System.Threading.TimerCallback回调=新的System.Threading.TimerCallback(更改wpa); var dt=新的日期时间(DateTime.Now.Year,DateTime.Now.Month,DateTime.Now.Day,7,0,0); var dt2=新的日期时间(DateTime.Now.

我想写windows服务,它每天7点工作。但blow代码只在两天内有效。我找不到原因

蒂亚

logger.Info(“OnStart启动”);
System.Threading.TimerCallback回调=新的System.Threading.TimerCallback(更改wpa);
var dt=新的日期时间(DateTime.Now.Year,DateTime.Now.Month,DateTime.Now.Day,7,0,0);
var dt2=新的日期时间(DateTime.Now.Year、DateTime.Now.Month、DateTime.Now.Day+1,0,0);
var dt3=新的时间跨度(24,0,0);
if(DateTime.Nowdt”);
var timer=new System.Threading.timer(回调,null,dt3-(DateTime.Now-dt),TimeSpan.FromHours(24));
}
  logger.Info("OnStart started");
                System.Threading.TimerCallback callback = new System.Threading.TimerCallback(change_wpa);
                var dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 7, 0, 0);
                var dt2 = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day + 1, 0, 0, 0);
                var dt3 = new TimeSpan(24, 0, 0);

                if (DateTime.Now < dt)
                {
                    logger.Info("DateTime.Now < dt");
                    var timer = new System.Threading.Timer(callback, null, dt - DateTime.Now, TimeSpan.FromHours(24));
                }
                else
                {
                    logger.Info("DateTime.Now > dt");
                    var timer = new System.Threading.Timer(callback, null, dt3 - (DateTime.Now - dt), TimeSpan.FromHours(24));
                }