2010-07-12 66 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

你將不得不重新安排線程在下一次運行之後。