Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ActiveX控件无法通过JavaScript访问_Javascript_Internet Explorer_Activex_Windows Embedded - Fatal编程技术网

ActiveX控件无法通过JavaScript访问

ActiveX控件无法通过JavaScript访问,javascript,internet-explorer,activex,windows-embedded,Javascript,Internet Explorer,Activex,Windows Embedded,请查看以下简单示例代码,将VLC web插件嵌入IE并访问插件的属性: <div id="player"> <object type="application/x-vlc-plugin" id="vlc" width="676px" height="386px" classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C1

请查看以下简单示例代码,将VLC web插件嵌入IE并访问插件的属性:

    <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参数添加到对象标记时)。它似乎无法通过JavaScript访问

到目前为止我已经试过了

  • 将PC上的IE安全设置更改为超低#2
  • 将插件classid添加到预先批准的注册表文件夹
  • 检查是否存在可能以某种方式禁用IE中ActiveX的组策略
  • VLC的几个版本
非常欢迎任何关于什么会导致这种奇怪行为的想法


编辑:可能需要添加PC#2在Windows嵌入式标准上运行(它是WYSE ThinClient)

我不太可能向某人推荐Adobe Flash。VLCActive-X插件可能比Flash有更多的bug,因为安装Flash并在Internet Explorer中使用它的人太多了。 参见Magnus Engdal对这个问题的回答

另一个选择是安装不同的浏览器:如果你有安装VLC的安全许可,当然你也可以安装Firefox、Google Chrome、Chrome或Opera


玛蒂的问题很相关。你是否仅限于IE?我很好奇这是怎么回事。

我在尝试从JS访问VLC对象(都来自NSAPI/ActiveX)时遇到了同样的问题。我的情况取决于VLC版本。目前,如果我使用2.0.2,一切都可以(NSAPI和AciveX)。较新的版本似乎打破了VLC对象的JS包装


您可以试用2.0.2版本,检查是否解决了问题。

信息不足。PC#2上的“console.log(vlc)”打印内容是什么?。IE版本?VLC版本?其他浏览器行为?哪个IE版本在PC2上?