我有一個複雜的控制檯程序用於數據操作,這是一個痛苦的使用。C#:使用單獨的.exe
我想創建一個包裝類型的GUI程序,以方便易用。
現在我打開一個新線程並使用Process.Start()並捕獲輸出。
這個工程很好,除了一個問題,如何取消用戶需求的過程?
鑑於這個過程是CPU密集型的,可以有很長的運行時間,這非常重要。
我有一個複雜的控制檯程序用於數據操作,這是一個痛苦的使用。C#:使用單獨的.exe
我想創建一個包裝類型的GUI程序,以方便易用。
現在我打開一個新線程並使用Process.Start()並捕獲輸出。
這個工程很好,除了一個問題,如何取消用戶需求的過程?
鑑於這個過程是CPU密集型的,可以有很長的運行時間,這非常重要。
使用Process.Kill()
方法:
foreach (var process in Process.GetProcessesByName("whatever"))
{
process.Kill();
}
如果你不想殺whatever
所有實例,然後使用啓動過程:
process = Process.Start("whatever");
然後調用當你想Kill
方法到:
process.Kill();
假設你有啓動一個進程像下面
Process myProcess = Process.Start("myapp.exe");
,那麼你可以關閉的過程中騰出使用
myProcess.Kill();
的OP啓動過程中自己,爲什麼要資源
然後停止進程他麻煩再次尋找它?如果他想殺死另一個進程啓動的進程,那麼你的回答本來是完美的:) – Sidewinder94
好吧,那很簡單。 – user6667032
所以它適用於你想要的東西?但有一件事,如果有多個「任何」進程的實例,它會殺死它們中的所有**。 – 2016-08-02 10:14:47