美文网首页佛系前端
如何判断IE OCX插件正常安装?

如何判断IE OCX插件正常安装?

作者: 前端司南 | 来源:发表于2019-10-16 13:50 被阅读0次

项目中用到了一个第三方的ie ocx控件,而经常遇到客户和测试小伙伴反馈相关功能无法正常使用,也没有友好提示。考虑到这个问题,必须要有一个ie ocx控件的检查机制。

检查原理

创建ActiveXObject对象去检查ocx控件

let newObj = new ActiveXObject(servername, typename[, location]) 

参数问题

看起来很简单的,但是用起来我懵逼了,应用程序对象名称servername这个参数怎么填呢?

插件供应商只提供了控件安装包,示例程序,clsid

<object id="NetVideo" classid="clsid:27E1A157-6A29-48AE-86C2-14591D90B4D4"></object>

于是我想应该可以从clsid入手研究。

什么是clsid

class identifier(类标识符)也称为CLASSID或CLSID,是与某一个类对象相联系的唯一标记(UUID)。一个准备创建多个对象的类对象应将其CLSID注册到系统注册数据库的任务表中,以使客户能够定位并装载与该对象有关的可执行代码。

以上摘自百度百科,可以看到clsiduuid是类似的原理,用来进行插件的唯一标识。

根据clsid怎么查到servername

MDN上搜索ActiveXObject词条,可以看到这么一句:

您可以在HKEY_CLASSES_ROOT注册注册表项中识别主机PC上的servername.typename的值。

哦,可以看到是从注册表中去查的。于是我运行regedit打开注册表查看,虽然知道是在HKEY_CLASSES_ROOT目录下,但是这也太多了吧,怎么找得到?

注册表HKEY_CLASSES_ROOT

当然还是要靠搜索功能,于是我根据clsid的值27E1A157-6A29-48AE-86C2-14591D90B4D4进行查找

搜索clsid

搜索时间有点长,但是最终还是查到了,位置如下:

计算机\HKEY_CLASSES_ROOT\SDS_CMSCtrl.SDS_CMSCtrlCtrl.1

ocx插件在注册表的位置

于是我猜想,servername应该就是SDS_CMSCtrl.SDS_CMSCtrlCtrl.1。经测试,果不其然。检查代码如下:

try {
  const ocx = new ActiveXObject('SDS_CMSCtrl.SDS_CMSCtrlCtrl.1')
  console.log(ocx)
} catch (error) {
  this.$alert('您还未安装视频插件!', '提示')
}

这样一来,如果用户没有安装插件,马上能够得到提示,perfect!

ocx未安装的友好提示

首发链接


扫一扫下方小程序码或搜索Tusi博客,即刻阅读最新文章!

Tusi博客

相关文章

  • 如何判断IE OCX插件正常安装?

    项目中用到了一个第三方的ie ocx控件,而经常遇到客户和测试小伙伴反馈相关功能无法正常使用,也没有友好提示。考虑...

  • JS 获取本地IP (仅限IE)

    直接复制到html文件, 在ie下运行就可以 这两个ocx插件为系统自带不需要安装

  • Vue.js ToDoList和MVVM模式

    安装Vue插件 兼容性 Vue不支持IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScri...

  • 浏览器兼容

    1、如何调试 IE 浏览器 ①安装不同版本的IE浏览器 ②安装IEtester这种模拟器测试工具等 ③在IE浏览器...

  • Android Studio配置与使用

    一、基本SDK配置 二、插件安装 首先安装插件, 在setting下,搜索对应插件,安装即可 如何安装卸载Andr...

  • 浏览器兼容

    如何调试IE浏览器 1.IE7.0及以上IE版本可使用IE自带的控制台工具调试。 2.可以安装虚拟机再安装不同版本...

  • 使用CSS将图片转换成灰色

    遗留问题:IE10 -11 如何兼容?js方法:grayscale.js插件

  • JS中的兼容写法

    判断用户输入事件 正常浏览器:oninput ie678 支持:onpropertychange 封装自己clas...

  • Atom+Vue的插件推荐

    如何安装插件,戳 Atom如何安装插件 1、atom-beautify 链接:https://atom.io/pa...

  • html meta 标签

    如果当前IE浏览器安装了GCF插件,则以chrome内核渲染页面,否则就以当前IE浏览器支持的最高版本模式来渲染 ...

网友评论

    本文标题:如何判断IE OCX插件正常安装?

    本文链接:https://www.haomeiwen.com/subject/vszymctx.html