2

こんにちは、Chromeで現在のURLを取得するためにこのコードが機能していますが、アクティブなタブのURLのみを取得しています。UI オートメーションを使用して、開いているすべてのタブから URL を取得する必要があります。

私の作業コード:

Function GetChromeUrl(ByVal proc As Process) As String
    If proc.MainWindowHandle = IntPtr.Zero Then
    Return Nothing
End If

Dim element As System.Windows.Automation.AutomationElement = AutomationElement.FromHandle(proc.MainWindowHandle)
If element Is Nothing Then
    Return Nothing
End If

Dim edit As System.Windows.Automation.AutomationElement = element.FindFirst(TreeScope.Children, New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Edit))
Return (edit.GetCurrentPattern(ValuePattern.Pattern)).Current.Value.ToString
End Function

Form Load イベントで次のコードを使用して呼び出します。

For Each proc As Process In Process.GetProcessesByName("chrome")
    MsgBox(proc.MainWindowTitle + " " + GetChromeUrl(proc))
Next
4

1 に答える 1