2

请看这个简单的示例代码,在 IE 中嵌入 VLC 网络插件并访问插件的属性:

    <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-object 没有它应该具有的属性。

令我印象深刻的是,PC#2 上的插件本身能够播放视频流(将 Src-Param 添加到对象标签时)。它似乎无法通过 JavaScript 访问。

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

  • 在 PC#2 上将 IE 安全设​​置更改为超低
  • 将插件 classid 添加到 Pre-Approved 注册表文件夹
  • 检查可能以某种方式在 IE 中禁用 ActiveX 的组策略
  • 几个版本的 VLC

任何可能导致这种奇怪行为的想法都非常受欢迎!

编辑:可能需要添加 PC#2 在 Windows Embedded Standard 上运行(它是 WYSE ThinClient)。

4

2 回答 2

2

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

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

于 2014-02-15T22:46:34.720 回答
0

我在向某人推荐 Adob​​e Flash 时处于可疑的位置。VLC active-X 插件可能比 Flash 有更多的错误,因为有更多的人安装 Flash 并在 Internet Explorer 中使用它。请参阅 Magnus Engdal 对此问题的回答Video element is not display in IE8? .

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

Mardie 的问题非常相关。您是否仅限于 IE?我很好奇这是怎么回事。

于 2014-02-12T07:51:33.520 回答