0
此示例代碼是過度簡化但表明問題的性質。如何關閉System.Diagnostics.Process,其中沒有涉及過程的變量
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.Start();
proc == null;
有什麼方法可以重新獲得對進程的引用,或者我只能從任務管理器關閉嗎?
此示例代碼是過度簡化但表明問題的性質。如何關閉System.Diagnostics.Process,其中沒有涉及過程的變量
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.Start();
proc == null;
有什麼方法可以重新獲得對進程的引用,或者我只能從任務管理器關閉嗎?
您可以撥打Process.GetProcesses以獲取所有過程的列表。然後在那個列表中搜索你想要的。或者,如果您知道流程的確切名稱,則可致電GetProcessesByName。您可以撥打Kill。
如果您在評論中提到您沒有權限查看這些流程,那麼您的運氣非常不好。創建它時,最好保留Process
參考。如果您沒有創建該過程,那麼即使您確實有有權查找它,您可能也沒有權限將其終止。
你對這個過程瞭解多少? –
有一些構造函數可以從那些正在運行的程序中爲你找到一個進程。 –
哈姆雷特Hakobyan,我用它在遠程機器上啓動一個罐子。我沒有權限查看服務器上的進程並殺死它。 – javaNinja