IE内网区域中的ActiveX控件被阻止,没有提示

ActiveX control in IE intranet zone - blocked without a prompt?

本文关键字:提示 控件 区域 ActiveX IE      更新时间:2023-09-26

我正在为我的公司编写一个内部网页面,需要使用嵌入式dll (COM)。该dll已在所有客户端计算机上注册,因此不需要从页面上下载,只需要运行即可。

我尝试使用以下代码来嵌入控件:

var newObj = new ActiveXObject("servername.classname");

这在本地测试时有效,但从内部网对象无法实例化与js错误"自动化服务器无法创建对象"。我怀疑这是因为IE(7)在默认情况下在内网区域阻止ActiveX控件。我也试过使用<object>标签,没有运气。

我有一个完成这项工作的截止日期,it部门不太可能在此之前改变公司的安全设置,所以除非他们非常直接地这样做,否则这真的不是一个选择。

所以我的问题是:是否有任何可能的解决方案,将允许我嵌入控件,以便它至少会提示用户,而不是默默地阻止控件,而不改变IE中的默认安全设置?

几乎公司里的每个人都在使用某种版本的IE(最多7个),所以它只需要为这个工作。

感谢所有的帮助和评论。

谢谢。

:如果这绝对是不可能的,我正在考虑在这个问题中使用服务器上的脚本中的dll。我还是宁愿在客户端做,因为控件有一些不错的用户界面可用。

如果你嵌入一个<object>标签,它应该提示你不管;然后,您可以通过object标记对它进行调用。另一个可以工作的技巧是把:<!-- saved from url=(0013)about:internet -->作为你的html文件的第一行;我不知道这是否会在内网区域工作,但从本地主机,这将导致页面被视为一个互联网页面。

我使用过FireBreath插件(作为activex控件,可以按您描述的方式调用),从来没有遇到过这样的问题。好运!