2010-07-12 41 views
3

我正在开发一个应用程序.net。有一点我必须做出一个每天在固定时间运行的函数。我不想使用Windows服务。有没有其他方法可以让这项工作成为现实?每天定时运行函数

+0

好得多,如果你可以指定你的功能 – hallie 2010-07-12 05:00:31

+0

我的函数为手持设备生成xml文件 – 2010-07-13 11:30:15

回答

14

我只是使用Windows任务计划程序(XPVista/7)。您也可以访问到Windows Task Scheduler programmatically.

+1

从技术上讲,我想这是一个Windows服务(虽然不是你必须写的),但+1,因为它是_is_正确的方式做到这一点。 – paxdiablo 2010-07-12 05:13:54

+1

@paxdiablo:true,尽管我解释说提问者不希望写一个服务来执行它。 – codekaizen 2010-07-12 05:15:18

+0

@paxdiablo:我不认为任务调度程序中的任务可以被视为Windows服务。 Windows服务需要有一些标准才可以作为服务使用(如启动/停止和安装机制),而taks计划允许执行任何类型的应用程序。你甚至可以运行winword.exe,如果你喜欢从任务调度器。所以说明taskscheduler与windows服务器是一样的是不正确的。 此外,任务用户可以使用taskschedule,而服务只能由有限的一组用户访问。 – Gertjan 2010-07-12 05:47:42

0

计算触发时间

plannedTime - now 

然后运行你的方法在一个单独的线程喜欢这里: Run a code in given time interval

你将不得不重新安排线程在下一次运行之后。