首页 文章

处理.NET WebBrowser控件中的安全消息

提问于
浏览
0

我正在尝试编写一个VB.net应用程序,它允许用户在html / jscript中创建自己的小部件插件,我想在应用程序设置中设置我自己的安全选项,允许用户选择可以运行的内容,例如脚本, flash,activex .

我想允许在没有WebBrowser控件中的Windows安全对话框的情况下使用activex控件(ActiveX控件正在尝试与页面进行交互...)或者它所说的内容 .

我开始定制WB控件以满足我的需求,实现各种接口,如IOleClientSite,IDocHostShowUI,IDocHostUIHandler等......

我似乎无法找到任何可以控制WB Control安全权限的内容 . 我试图实现IHttpSecurity和IInternetSecurityManager,但我要么咆哮错误的树或不正确 .

4 回答

  • 0

    使用此代码:

    Public WithEvents Security as WebBrowserSecurityAlerts
    Public Sub Security_Show(sender as object, e as WebBrowserSecurityAlertsEventArgs) Handles Security.Show
    MSGBOX (e.Info.Encryption & vbnewline & e.Info.Identity)
    End Sub
    

    处理WebBrowser

  • 0

    WebBrowser控件只是Internet Explorer的另一个实例,因此继承了IE中的安全设置 .

    我发现没有其他方法可以更改安全选项而不是在IE中编辑它们 . 您很可能也会更改注册表中的设置,但它们对于所有IE实例都是全局的 . 如果您在代码中更改它,那么您也可以为所有浏览器实例更改它 .

    在我前段时间写过的自动化应用程序中,我通过监视窗口弹出窗口, grab 窗口句柄并向该窗口中的按钮发送单击来处理弹出窗口 . 当然不是一个优雅的解决方案:(

  • 0

    IInternetSecurityManager需要IQueryInterface . 我没有在我的应用程序中实现IQueryInterface,这就是它无法正常工作的原因 .

  • 1

    IHttpSecurity和IInternetSecurityManager应该可以工作,您的实现如何?检查http://support.microsoft.com/kb/246227以获取示例 .

相关问题