2016-04-21 33 views
0

我有一個控制檯程序來運行每日批處理。我有一個用戶界面,可以用來更改控制檯程序使用的數據庫中的參數。C#爲什麼我不能以編程方式終止在任務計劃程序中啓動的控制檯程序?

我認爲能夠從UI中停止和啓動該程序並且我可以做到這一點非常好。

但是,我將控制檯程序設置爲在工作日之前使用任務計劃程序啓動以防機器重新啓動 - 至少我知道該程序將在一天開始時運行。

但是,我無法在任務計劃程序啓動時將其取消。獲取「訪問被拒絕」。

爲什麼?我該如何解決這個問題?

+0

執行與管理員權限? –

+0

你可以從「任務管理器」手動殺死進程嗎?這樣的信息還是出現了嗎? –

+0

是的 - 可以使用任務管理器殺死它。沒問題。 –

回答

0

嘗試使用下面的方法:

private void KillProcessByProcessName(string strProcessName) 
{ 
    foreach (Process p in System.Diagnostics.Process.GetProcessesByName(strProcessName)) 
     p.Kill(); 
} 


e.g:

private void btnProcessKiller_Click(object sender, EventArgs e) 
{ 
    KillProcessByProcessName("winword"); 
} 
+0

這就是我正在使用的。如果我手動啓動要殺死的進程,但工作正常,但如果使用Task Scheduler啓動它,則不會殺死完全相同的進程。 –

相關問題