2012-04-09 102 views
2

是否有可能以某種方式通過C#與Windows任務調度程序進行交互?Windows任務調度程序C#

我想要做的是,我們的服務器有時需要重啓,但我不想只是「硬重啓」它。 因此,如果可能以某種方式在我們的任務計劃程序中獲取我們的應用程序的當前狀態,以查看它是否正在運行,那將會很不錯。

如果它當前正在運行,那麼我的重新啓動應用程序應該等待X分鐘再次檢查。

但首先,我可以從我的任務中獲得狀態嗎?

+0

這聽起來更像是PowerShell中工作... – mgnoonan 2012-04-09 14:32:06

回答

2

不要打擾與任務調度程序進行交互。只需打開遠程處理(或wcf)到應用程序,並檢查它是否以這種方式運行。任務調度程序只是可以啓動的許多可能方式之一,所以這實際上是檢查應用程序是否實際運行的不可靠方法。你想知道你的應用程序是否正在運行,而不是如果任務調度程序啓動它。

Talking about communication between applications (WCF)

+0

感謝您的答覆。我對這個WCF不太確定。 使用它會是一個壞主意,請檢查其他應用程序是否正在運行? Process.GetProcessesByName(processName); – KLIM8D 2012-04-09 15:27:56

+0

關閉我的頭頂,我看不到任何問題。這聽起來像是你在正確的軌道上。你如何看待它的運行,真的不重要。就像我說的,你只是不想讓自己陷入只能檢查某個過程是否開始的過程中。 – kemiller2002 2012-04-09 15:37:14

+0

我想檢查它是否運行的應用程序只能由任務計劃程序啓動,但我可以看到您的觀點。如果應用程序正在運行且未由任務schelduer啓動,則運行狀態將不準確。 我想我會堅持使用Process解決方案。:) – KLIM8D 2012-04-09 15:49:32

相關問題