如何解决WebBrowser对象的PowerShell事件处理
我想在PowerShell中使用WebBrowser对象创建一个简单的用户窗体,以浏览一个特定的URL。位于该URL的网站会打开一些超链接作为弹出窗口,这会导致这些链接在新的InternetExplorer窗口中打开。
相反,我想通过NewWindow事件捕获这些弹出窗口,并以某种方式使用新的WebBrowser实例创建另一个选项卡。
首先,我似乎无法正确触发事件。到目前为止,以下代码运行良好,但不会在正确的时间触发该事件。相反,在关闭用户窗体后,我会收到多个通知弹出窗口(数量取决于我打开了多少个新窗口)。
$Browser_NewWindow = {
$(New-Object -ComObject WScript.Shell).Popup("Event fired correctly")
}
$Form = New-Object System.Windows.Forms.Form
$Browser = New-Object System.Windows.Forms.WebBrowser
$Form.Text = "MiniBrowser"
$Form.Controls.Add($Browser)
Register-ObjectEvent -InputObject $Browser -EventName NewWindow -Action $Browser_NewWindow
$Browser.Navigate("http://www.bing.com")
$Form.Width = 900
$Form.Height = 900
$Browser.Top = 0
$Browser.Left = 0
$Browser.Width = 880
$Browser.Height = 890
$DialogResult = $Form.ShowDialog()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。