0

您好,我正在使用 Internet Explorer 无头模式在我的脚本上执行自动化任务,但是我遇到了一个问题,有时通过在某些页面上冲浪时会出现身份验证弹出窗口来登录页面,但不是通过 HTML 弹出窗口而是更多的窗口弹出。

我想控制弹出窗口,所以当它弹出时它将在 TOP 上可见。现在它是非常随机的,它有时会显示在所有程序的顶部,但有时它在后台很远,然后自动化失败,因为用户没有看到弹出窗口。

硬编码用户名和密码不是一种选择。

有谁知道我如何操纵弹出窗口(见附件中的捕获)并最终至少将其放在屏幕顶部?

谢谢!

Windows 安全弹出窗口

4

1 回答 1

0

解决方案:

Public Sub New()

        ' This call is required by the designer.
        InitializeComponent()

        Automation.AddAutomationEventHandler(WindowPattern.WindowOpenedEvent, AutomationElement.RootElement,
           TreeScope.Subtree,
           Sub(UIElm, evt)
           Dim element As AutomationElement = TryCast(UIElm, AutomationElement)
           If element Is Nothing Then Return
              Dim NativeHandle As IntPtr = CType(element.Current.NativeWindowHandle, IntPtr)
              If InStr(element.Current.Name, "Windows Security") > 0 Then
                    AppActivate(element.Current.ProcessId)
              End If

        End Sub)
    End Sub
于 2020-01-24T09:15:37.730 回答