在IE7上检测adobe flash版本 - vista

时间:2009-05-29 15:25:29

标签: javascript flash windows-vista internet-explorer-7

看来我无法在Vista / IE7上检测到已安装的闪存版本。

以下代码失败:

var x = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');

我得到的错误是:

automation server cannot create object

看看Adobe Flash Detection Kit(来自adobe),它看起来似乎也失败了。我只有1台vista机器进行测试,所以我很好奇:

  • 是否有解决问题的方法
  • 每个人都会遇到这个问题吗?

我已经在Windows XP上的IE6和IE7上成功测试了这个。

2 个答案:

答案 0 :(得分:1)

看起来像swfobject - http://code.google.com/p/swfobject/ - 是一个实际可行的选项。

“它是SWFObject 1.5,UFO和Adobe Flash Player Detection Kit的继承者。” - http://www.adobe.com/devnet/flashplayer/articles/swfobject.html

代码看起来像这样(未在没有安装Flash的机器上测试过):

<script type="text/javascript" src="/Scripts/swfobject/swfobject.js"></script>
<script type="text/javascript">
$(window).load(function() {
    try {
        var flashPlayer = swfobject.getFlashPlayerVersion();
        var flashVersion = flashPlayer.major + "." + flashPlayer.minor + "." + flashPlayer.release;
    } catch (ex) {
    }
});
</script>

答案 1 :(得分:0)

如何检索当前安装的Flash版本的版本great examples。所有类似的例子都使用actionscript(v2 +),他们只是收集有关flash版本的信息并将其显示给用户。