安排计时器每月执行一次 – C#
我需要每月一次从SQL Server向MySQL传输一些数据。 我已经完成了这个转移的东西,但我不知道(我还没有在互联网上找到)如何设置一个计时器,每个月在特定日期执行此转移。 我不想仅以毫秒为单位设置计时器间隔,因为天数从一个月到另一个月不等。
任何帮助表示赞赏……
您可以使用Windows任务计划程序进行此类工作。 在这里查看Schtasks
命令行选项(其中有很多)
例1:
计划在每个月的第一天运行的任务
以下命令安排MyApp程序在每个月的第一天运行。 因为值为1是/ mo(修饰符)参数和/ d(日)参数的默认值,所以这些参数将从命令中省略。
schtasks /create /tn "My App" /tr myapp.exe /sc monthly
例2:
安排第15天的任务
以下命令安排MyApp程序在每个月的15日(下午3:00(15:00))运行。 它使用/ d参数指定日期。 它还使用/ st参数指定开始时间。
schtasks /create /tn "My App" /tr myapp.exe /sc monthly /d 15 /st 15:00
这听起来像你应该设置为计划任务或SQL服务器作业,而不是通过计时器运行一个月的进程?
链接:
- SQL Server在2008年的工作
- 安排Windows任务
我想你也可以设置一个任务作为Windows服务,并通过数据库中的设置检查你上次更新,但这似乎有点过分。 从它的声音,你已经有一个C#应用程序设置,完成工作,所以我只是做一个预定的Windows任务。