0
我使用Process.Start(url)在默認Web瀏覽器中啓動URL,然後打算使用Process.Kill()關閉它。在VB.net中查找默認瀏覽器
問題是找到默認瀏覽器來知道要殺死哪個進程。建議?
我使用Process.Start(url)在默認Web瀏覽器中啓動URL,然後打算使用Process.Kill()關閉它。在VB.net中查找默認瀏覽器
問題是找到默認瀏覽器來知道要殺死哪個進程。建議?
Private Function getDefaultBrowser() As String
Dim browser As String = String.Empty
Dim key As RegistryKey = Nothing
Try
key = Registry.ClassesRoot.OpenSubKey("HTTP\shell\open\command", False)
'trim off quotes
browser = key.GetValue(Nothing).ToString().ToLower().Replace("""", "")
If Not browser.EndsWith("exe") Then
'get rid of everything after the ".exe"
browser = browser.Substring(0, browser.LastIndexOf(".exe") + 4)
End If
Finally
If key IsNot Nothing Then
key.Close()
End If
End Try
Return browser
End Function
在那裏你可以得到默認的瀏覽器。然後你可以遍歷正在運行的進程並殺死瀏覽器。
Dim browser As String
browser = getDefaultBrowser()
For Each p As Process In Process.GetProcesses
If p.ProcessName = browser Then
p.Kill()
Exit For
End If
Next
對於殺工作我不得不剝離 「瀏覽器」 打倒: browserp = IO.Path.GetFileName(瀏覽器) strfile = browserp 昏暗strSplit()作爲字符串 strSplit =分段(strFile ,「。」) browserkill =(strSplit(0)) 用broweserkill瘦取代瀏覽器。我敢肯定,有一種更優雅的方式,但它的工作原理。 – gwilson