如何让Windows服务在每个星期一上午12点运行
请指导我。
我试过跟随一个..
protected void InitializeTimer()
{
if (timer1 == null)
{
timer1 = new Timer();
timer1.AutoReset = true;
var todayInWeek = DateTime.Now.Date.DayOfWeek;
DateTime _scheduleTime = DateTime.Parse(System.Configuration.ConfigurationManager.AppSettings["ScheduledTime"]);
if (todayInWeek == DayOfWeek.Monday)
{
timer1.Elapsed += new ElapsedEventHandler(schedular());
}
}
}
private void schedular(object sender, ElapsedEventArgs e)
{
try
{
}
catch (Exception ex)
{
}
}
答案 0 :(得分:0)
正如人们在评论中所说,创建一个简单的控制台应用程序,然后安排任务。
要启动Task Scheduler
,只需在Windows搜索栏中输入Task Scheduler
或Taskschd.msc
即可。
然后在右侧选择Create Task...
。将它指向您的控制台应用程序,然后创建一个新的触发器,表明它应该每周一在12.00运行,如下所示:
有关在Task Scheduler
https://technet.microsoft.com/en-us/library/cc748993%28v=ws.11%29.aspx?f=255&MSPPError=-2147217396
答案 1 :(得分:0)
您可以使用Topshelf和Quartz.net进行调度 - 您可以创建一个控制台应用程序,它将作为Windows服务安装,然后将其配置为每24小时运行一次。如果您需要更改调度,那么它将非常灵活 - 我通过Windows GUI发现调度任务很笨重。