2011-04-22 52 views
0

我正在爲c#中的公司編寫一個軟件,該軟件用於在Windows平臺上運行。在c中調度備份#

我的一個要求是允許用戶安排備份。

也就是說,用戶將設置數據庫將由計算機自動備份的時間。

在Linux平臺上,我會使用crons,但我在Windows平臺上有點失落。我不希望軟件本身實際打開備份運行。即使軟件本身沒有運行,我也希望它能夠被執行。

我最好的選擇是使用Windows調度程序或創建一個自定義服務,它將在啓動時運行。

任何人都可以指出我如何真正實現這一目標嗎?歡迎任何建設性意見。

謝謝。

+0

爲什麼不使用集成在Windows中的任務調度程序? – alex 2011-04-22 10:20:55

+0

當你說數據庫是什麼意思?如果你的意思是像Sql Server那樣,那麼使用數據庫自​​己的調度備份方法將是最好的,並且這些可以爲大多數數據庫解決方案編寫腳本(儘管讓用戶控制它並不一定明智)。如果您正在備份自定義應用程序數據存儲,那麼Windows調度程序或自定義服務都可以正常工作 - 這些就是您在Windows環境中安排時間的方式。 – 2011-04-22 10:22:44

+0

你們可以指點我一些在c#中使用Windows調度程序的文檔嗎? – Yash 2011-04-22 10:29:54

回答

1

有關信息,Windows「AT」命令有點類似於cron。您可以從命令行獲得幫助:

AT /? 

我不一定會推薦它用於數據庫備份。要麼創建Windows計劃任務,要麼備份SQL Server數據庫,請使用SQL Server的內置計劃程序。

0

另一種選擇是創建一個windows服務來處理任務。然後,您可以快速輕鬆地編寫所需的任何代碼(例如備份/電子郵件日誌等),並且無需運行應用程序即可運行。

有一些方法可以用Windows內置的Task Scheduler完成相同的任務,但只是我更喜歡的替代方案。