在Silverlight或Javascript中确定ActiveX控件的版本

时间:2013-07-11 17:02:31

标签: javascript silverlight internet-explorer activex version

我正在寻找一种方法来确定

a)用户是否安装了特定的ActiveX control

b)versionJavascript中该控件的Silverlight是什么。

我使用了以下javascript代码来确定控件是否存在:

        var activex;
        try {
            activex = new ActiveXObject('SomeProgId');
        } catch(e) {
            activex = null;
        }
        if (activex) {
            alert("found");
        } else {
            alert("not found");
        }

这似乎工作得很好。

但我认为无法从activex object访问任何版本属性(或任何属性)。

我需要知道用户有哪些版本才能确定是否需要重定向才能安装新版本?

对此有任何想法都表示赞赏。

1 个答案:

答案 0 :(得分:1)

据我所知,除非它作为对象界面上的属性公开,否则无法获取版本信息。

话虽如此,您可以通过在OBJECT标记的CODEBASE属性中包含#version=之后的版本说明符来解决此问题。如果不满足版本测试,object标签将提示用户升级控件。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/941zhks9(v=vs.80).aspx