VB .NET SHDocVw.InternetExplorer:Windows 安全弹出窗口
VB .NET SHDocVw.InternetExplorer: Windows Security popup
您好,我正在使用 Internet Explorer 无外设模式在我的脚本上执行自动化任务,但我遇到了一个问题,有时在浏览某些页面时会出现身份验证弹出窗口,用于登录该页面,但无法通过HTML 弹出窗口,但更多的是 windows 弹出窗口。
我想控制弹出窗口,这样当它弹出时就会在顶部可见。现在它非常随机,有时会显示在所有程序的顶部,但有时会在后台很远,然后自动化失败,因为用户没有看到弹出窗口。
硬编码用户名和密码不是一个选项。
有人知道我如何操作弹出窗口(请参阅附件中的截图)并最终至少将其放在屏幕顶部吗?
谢谢!
Windows Security Popup
解决方案:
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
您好,我正在使用 Internet Explorer 无外设模式在我的脚本上执行自动化任务,但我遇到了一个问题,有时在浏览某些页面时会出现身份验证弹出窗口,用于登录该页面,但无法通过HTML 弹出窗口,但更多的是 windows 弹出窗口。
我想控制弹出窗口,这样当它弹出时就会在顶部可见。现在它非常随机,有时会显示在所有程序的顶部,但有时会在后台很远,然后自动化失败,因为用户没有看到弹出窗口。
硬编码用户名和密码不是一个选项。
有人知道我如何操作弹出窗口(请参阅附件中的截图)并最终至少将其放在屏幕顶部吗?
谢谢!
Windows Security Popup
解决方案:
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