每周特定日期和时间运行System.Timers.Timer事件c#

时间:2013-03-14 18:53:09

标签: c# .net timer

我正在使用System.Timers.Timer编写Windows服务以跟踪我的间隔。我想做的是使我的服务在特定的日期和时间基于我的app.config文件中的变量启动。

2 个答案:

答案 0 :(得分:2)

我不认为你真的在写Windows服务,我认为你正在写一份工作。解决问题的一种更简洁,更简单的方法是编写一个控制台应用程序,然后设置Windows Scheduled Task以便按照您想要的时间间隔运行该控制台应用程序。

请注意,您必须使用Timer方法设置以毫秒为单位的时间,Windows服务无法处理夏令时等等。

答案 1 :(得分:1)

虽然我认为最好的办法是将其作为预定任务,但您可以轻松创建一个可以在每天同一时间发出信号的等待计时器。 Windows有一个Waitable Timer对象,但它没有.NET支持。

我发布了一篇名为 C#中的Waitable Timers 的文章,其中我展示了如何在C#程序中使用此对象。不幸的是,发布该文章的网站已不再存在。但是,您可以从我的网站http://www.mischel.com/pubs/waitabletimer.zip下载该文章的代码示例。您可以以任何您认为合适的方式自由使用代码。