我已經使用C#編寫了一個控制檯應用程序,並且它在以下命令中打開了一個瀏覽器。Process.Kill不適用於與默認Web瀏覽器關聯的進程
Process webprocess = Process.Start("http://www.hashgurus.com");
但是工作完成後我想關閉瀏覽器。我試圖殺死這個過程,但它不工作。
webprocess.Kill();
我已經使用C#編寫了一個控制檯應用程序,並且它在以下命令中打開了一個瀏覽器。Process.Kill不適用於與默認Web瀏覽器關聯的進程
Process webprocess = Process.Start("http://www.hashgurus.com");
但是工作完成後我想關閉瀏覽器。我試圖殺死這個過程,但它不工作。
webprocess.Kill();
Process webBrowser = Process.Start(url);
webBrowser.WaitForExit();
webBrowser.Kill();
webBrowser.WaitForExit();
注意,我不知道如何用多進程瀏覽器的工作原理是最現代的網絡瀏覽器是。如果您想確定,請使用遞歸kill-all-child-processes方法來確保樹中的所有子進程都被終止。不過,我相信在多進程瀏覽器中的子進程檢測是否他們的父母被殺,然後在這種情況下提交儀式seppuku。
這不起作用。 Process webprocess = Process.Start(url);當我調試時,我得到Webprocess = null – Venkat
您可以嘗試獲取所有進程的列表並遍歷它們並殺死所需的進程。您將需要使用System.Diagnostics
。
繼承人它是如何工作的一些步驟:過程
.MainWindowTitle
)
您是否試過[Kill](https://msdn.microsoft.com/en-us/library/system.diagnostics.process.kill .aspx) –
非常大的進程(如瀏覽器)通常用作單實例應用程序。換句話說,如果瀏覽器已經在運行並且你運行這段代碼,那麼瀏覽器只是要求第一個實例顯示網頁並終止。一種方法是在另一個選項卡中看到頁面打開。 Kill()不能工作,進程已經終止。 –