js判断ActiveX控件是不是安装
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js判断ActiveX控件是不是安装相关的知识,希望对你有一定的参考价值。
if (window.ActiveXObject)alert("已安装!");
else
alert("ActiveX未安装!");
不知道楼主为什么要用ActiveXObject,
ActiveXObject从IE6开始就支持,但是也仅仅只有IE支持,其他浏览器不支持,会造成不兼容的! 参考技术A window.ActiveXObject 直接这样,返回 布尔值
如何以编程方式确定是不是已安装 ActiveX 控件,以及它或整个 ActiveX 是不是已被禁用?
【中文标题】如何以编程方式确定是不是已安装 ActiveX 控件,以及它或整个 ActiveX 是不是已被禁用?【英文标题】:How do I programmatically determine if an ActiveX control has been installed, and whether it or ActiveX as a whole has been disabled?如何以编程方式确定是否已安装 ActiveX 控件,以及它或整个 ActiveX 是否已被禁用? 【发布时间】:2009-09-14 21:44:59 【问题描述】:我在服务器端使用 ASP.NET,在客户端使用 JavaScript。
我正在尝试开发一些页面来帮助用户排除故障,我想知道是否有办法以编程方式确定以下内容:
-
如果 ActiveX 在 Internet Explorer 中被禁用
如果已安装 ActiveX 控件
如果 ActiveX 控件已安装但已禁用
对于情况 2 和 3,我知道为了检测是否安装了 ActiveX 控件,您将在 JavaScript 中使用以下检查:
function isActiveXControlInstalled(progId, expectedVersion)
var version;
try
var instance = new ActiveXObject(progId);
version = instance.VersionString;
instance = null;
catch (e)
version = null; // Set version to null, since that is an invalid control version, and the check below will always fail.
return (version >= expectedVersion);
但是,如果控件已安装但禁用,此函数也会返回 false。这两种情况能区分吗?
【问题讨论】:
对不起,我不明白,但是您的尊贵是什么意思? isActiveXControlInstalled 函数无法区分情况 2 和 3。如果未安装活动控件,如果已安装但禁用,它将返回 false。我希望能够区分这些情况,以便向用户显示安装页面或向他们展示如何重新启用控件的页面。 【参考方案1】:没有。我认为如果它已安装但被禁用,您将无法从您的应用程序中分辨出来。您可以考虑将故障排除页面中的措辞更改为“未安装或已禁用”。
【讨论】:
以上是关于js判断ActiveX控件是不是安装的主要内容,如果未能解决你的问题,请参考以下文章
ActiveX控件之ActiveXObject is not defined