我正在为我的公司编写一个内部网页,需要使用嵌入式DLL(COM)。 dll已在所有客户端计算机上注册,因此无需从页面下载,只需运行即可。
我尝试使用以下代码嵌入控件:
var newObj = new ActiveXObject("servername.classname");
这在本地测试时有效,但是从Intranet中,对象无法使用js错误“自动化服务器无法创建对象”进行实例化。我怀疑这是因为IE(7)默认在Intranet区域中阻止ActiveX控件。我也试过使用<object>
标签,但没有运气。
我有一个截止日期来完成这项工作,IT部门不太可能在此之前改变公司的安全设置,所以除非它非常直接地让他们这样做,否则不是一个选择。
所以我的问题是:是否有任何可能的解决方法,允许我嵌入控件,以便它至少提示用户而不是静默阻止控件,而不更改IE中的默认安全设置? /强>
公司几乎每个人都使用某种版本的IE(最多7个),所以它只需要为此工作。
所有帮助和评论都表示赞赏。
感谢。
更新: 如果这绝对不可能,我正在考虑使用this question中服务器上的脚本中的dll。我仍然宁愿做客户端,因为控件有一些很好的用户界面。
答案 0 :(得分:1)
如果您使用<object>
标记嵌入它,它应该提示您;然后你可以通过object标签对它进行调用。另一个可行的技巧是:<!-- saved from url=(0013)about:internet -->
作为你的html文件的第一行;我不知道这是否适用于Intranet区域,但是来自localhost会导致页面被视为互联网页面。
我使用过FireBreath个插件(它们充当了activex控件,可以按照你描述的方式调用)并且从来没有像这样的问题。祝你好运!