gpt4 book ai didi

c# - 使用 MSHTML/IExplorer 捕获模态对话框对象

转载 作者:行者123 更新时间:2023-11-30 18:43:07 26 4
gpt4 key购买 nike

我正在使用 C#、MSHTML 和 InternetExplorer 对象来浏览网页,但遇到了一个问题。

基本上,我注意到在 IE7 或更早版本中,当调用 window.showModalDialog 时,会触发 NewWindow3 事件。

在 IE8 和 IE9 中,永远不会触发 NewWindow3。正如 MSDN 所写:“NewWindow3 事件仅在即将创建 Internet Explorer 的新实例时触发。调用 showModalDialog 或 showModelessDialog 不会触发事件,因为它们不是 Internet Explorer 的新实例。它们被实现为 MSHTML 主机窗口,这允许他们呈现和显示 HTML 内容,但不能显示文档之间的超链接。”(http://msdn.microsoft.com/en-us/library/aa768337(v=VS.85).aspx)

我能够接近捕获正在触发的模态对话框的唯一方法——但我无法访问实际的模态对象——是使用 WindowStateChanged 事件。通常会调用此事件,但我注意到当 dwFlags == 1 和 dwValidFlagsMask==3 时,这通常是浏览器因模式对话框而停用时...

现在,我只需要知道如何获取模态对话框对象即可。任何帮助将不胜感激

最佳答案

事实证明,这完全取决于您的 Windows UAC 设置。出于安全原因,当您的 UAC 设置为中等或更高时,UAC 会阻止访问模态对话框。降低这些设置允许通过 NewWindow 事件完全访问模式对话框

关于c# - 使用 MSHTML/IExplorer 捕获模态对话框对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4889997/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com