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

时间:2012-01-01 17:40:24

标签: c# .net windows-7 com bho

在Win7机器上注册BHO后,我意识到出了问题。当IE 未打开作为管理员时,不会触发WebBrowser的 OnBeforeNavigate2 OnDocumentComplete 事件。当我以管理员身份运行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的计算机上,一切正常(即使是在有限的帐户上)。

1 个答案:

答案 0 :(得分:0)

您确定在限制帐户中正确注册了BHO吗?