我用vb6写了一个ocx,然后再html页面中引用该ocx,每次打开html页面时,会弹出一个警告窗口:“此页上的ActiveX控件和本页上的其它部分的交互可能不安全。你想允许这种交互吗?”请问大家,怎样才能避免此警告窗口出现啊?

解决方案 »

  1.   

    ie的安全级别设为最低也不行,我引用其它标准控件,如MSFlexGrid却不会出现警告窗口
      

  2.   

    控件的安全是需要证明的,也就是说你的控件需要一个数字签名。要象MSFlexGrid一样,你的数字签名需要得到第三方安全厂商的认证或者是微软自己的认证。如果你的用户群有限,并且你已经制作了数字证书,你可以告诉用户,在IE里面设置“工具”-->“内容”中信任你的证书。
      

  3.   

    如果你的控件需要做网页中下载就需要数字证书,如果是安装的话,你只要实现控件的安全接口就行了,实现接口可以参考MSDN中的《HOWTO: Implement IObjectSafety in Visual Basic Controls》一文。
      

  4.   

    如果是要在客户端运行的话,那一定需要客户端下载才可以,所以你必须有一个cab的数据包写在控件的codebase中。
    关于ie 的设置是这样,如果你是在局域网上运行,那你必须设置选项中的"本地intranet",将是否允许控件运行的选项修改为“启用”,如果是广域网上,那就要设置"intranet",其他的也就一样了。
    这样好象就不需要数字签名了。