2014-02-06 66 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?我很好奇,結果如何。