在Windows 7上,当IE没有以管理员身份打开时,不会触发WebBrowser事件

本文关键字:事件 WebBrowser 身份 管理员 Windows IE | 更新日期: 2023-09-27 18:19:22

在Win7机器上注册BHO后,我意识到有些事情是错误的。当IE 未以管理员身份打开时,WebBrowser的OnBeforeNavigate2OnDocumentComplete事件不会触发。当我以管理员身份运行IE时,这些方法被正确地触发。我以以下方式订阅这些方法:

    public int SetSite(object site)
    {
        if (site != null)
        {
            webBrowser = (WebBrowser)site;
            webBrowser.DocumentComplete += new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
            webBrowser.BeforeNavigate2 += new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
        }
        else
        {
            webBrowser.DocumentComplete -= new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
            webBrowser.BeforeNavigate2 -= new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
        }
        return 0;
    }

UAC功能以默认值开启。在安装Windows XP的机器上一切正常(即使是有限的帐户)。

在Windows 7上,当IE没有以管理员身份打开时,不会触发WebBrowser事件

您确定BHO已在有限帐户上正确注册吗?