日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

js判断ActiveX控件是否安装

發(fā)布時間:2024/3/26 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js判断ActiveX控件是否安装 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉(zhuǎn)自http://blog.csdn.net/white__cat/article/details/38357499

avascript腳本

[javascript]?view plaincopy
  • <script?type="text/javascript"??language="JavaScript">??
  • ????alert("檢查ocx是否安裝");??
  • ??????
  • ????<!--?第一種?-->??
  • ????var?NewObj;??
  • ????try?{??
  • ????????NewObj?=?new?ActiveXObject("OCXTEST1.OcxTest1Ctrl.1");??
  • ????????var?xx=typeof(NewObj);??
  • ????????alert(xx);??
  • ????????if?(typeof(NewObj)?!=?'undefined')?{??
  • ????????????NewObj?=?null;??
  • ????????????alert("存在111");??
  • ????????????<!--return?true;-->??
  • ????????????}??
  • ????}?catch?(e)?{??
  • ????????NewObj?=?null;??
  • ????????alert("不存在222");??
  • ????????<!--return?false;-->??
  • ????}??
  • ??????
  • ????<!--?第二種??-->??
  • ????try{??
  • ????????if(document.all.ocx.object?==?null)?{??
  • ????????????alert("控件不存在,您還不能使用此功能!")??
  • ????????}else{??
  • ????????????alert("控件已安裝");??
  • ????????}??
  • ????}catch(e){??
  • ????????alert("異常調(diào)用")??
  • ????}??
  • ??
  • ??
  • </script>??

  • ? 我們都知道js被設(shè)計為不可訪問本地資源,因此理論上js無法知道本地是否安裝了特定程序。但是凡事無絕對,對于IE,給出如下兩種思路:

    ? ? 1 ActiveX

    ? ? ? ?在頁面中用js去new一個指定的ActiveX對象,如果拋出異常,則說明目標客戶端沒有安裝。這種方法的問題在于容易彈出安全性提示,但是經(jīng)過我的試驗,編寫ocx時實現(xiàn)isafeobject接口并在注冊表中寫入特定鍵值,就可以避免彈框。

    ? ? 2?user-agent strings

    http://msdn.microsoft.com/en-us/library/ms537503%28v=vs.85%29.aspx

    ? ? ? ?這個方法更加簡單,原理是IE在發(fā)送http請求時的User-Agent字段的值和注冊表有關(guān):注冊表中某些特定項的值會被拼接到其中。也就是說我們可以在安裝客戶端時向注冊表的特定位置添加自定義標識,然后在頁面中用js判斷navigator.userAgent是否包含該標識就可以了。具體說明參考這里

    總結(jié)

    以上是生活随笔為你收集整理的js判断ActiveX控件是否安装的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。