2014-02-06 42 views
2

无法访问,请看看这个简单的示例代码中嵌入IE中的VLC网页插件和访问插件的属性:ActiveX控件通过JavaScript

<div id="player"> 
     <object type="application/x-vlc-plugin" 
      id="vlc" 
      width="676px" 
      height="386px" 
      classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"> 
     </object> 
    </div> 

    <input type="button" onclick="alert(vlc.VersionInfo);"> 

能正常工作的PC#1,给我是该插件的当前版本。另一方面,在PC#2上,这给出了“未定义”。从调试器中我可以看到,vlc对象没有它应该拥有的属性。

让我感到震惊的是,PC#2上的插件本身能够播放视频流(将Src-Param添加到对象标签时)。它似乎不能通过JavaScript访问。

到目前为止,我已经试过..

  • 改变IE的安全设置,以超低价PC的#2
  • 添加插件的classid来检查组前批准的注册表文件夹
  • 政策,可能会禁用ActiveX在IE中莫名其妙地
  • 几个版本VLC

任何ID关于什么可能导致这样一个奇怪的行为,非常欢迎!

编辑:这可能是相关的补充,PC#2在Windows嵌入式标准运行(这是一个WYSE瘦客户机)..

+1

没有足够的信息。什么“console.log(vlc)”在PC#2上打印? IE版本? VLC版本?其他浏览器的行为? – Mardie

+0

PC2上的哪个IE版本? –

回答

2

我有同样的问题试图从JS访问VLC对象(从NSAPI/ActiveX)。在我的情况下,这取决于VLC版本。目前,如果我使用2.0.2一切正常(包括NSAPI和AciveX)。较新的版本似乎打破了VLC对象的JS包装。

你可以尝试2.0.2版本并检查你是否解决了你的问题。

0

我在半信半疑的位置推荐的Adobe Flash的人。 VLC active-X插件可能比Flash有更多的错误,因为有更多的人安装Flash并在Internet Explorer中使用它。 查看Magnus Engdal对这个问题的回答Video element is not displaying in IE8?

另一种选择是安装一个不同的浏览器:如果你有安全许可安装VLC想必你也可以安装火狐或谷歌Chrome或铬或Opera ...

Mardie问题是很有关系。你是否限于IE?我很好奇,结果如何。